pack-test-3.c

来自「用于进行gcc测试」· C语言 代码 · 共 45 行

C
45
字号
/* { dg-do compile } *//* Copyright (C) 2003 Free Software Foundation, Inc.   Contributed by Nathan Sidwell 15 Jul 2003 <nathan@codesourcery.com> *//* you should not be able to pack a typedef to a struct, only the   underlying struct can be packed.  *//* ok */struct u1{  char field1;  short field2;  int field3;};/* ok */typedef struct p1 {   char  field1;   short field2;   int field3;} __attribute__ ((packed)) p1_t1;/* ok */typedef struct __attribute__ ((packed)) p2 {   char  field1;   short field2;   int field3;} p2_t1;int ary1[sizeof (struct p1) == sizeof (p1_t1) ? 1 : -1];int ary2[sizeof (struct p2) == sizeof (p2_t1) ? 1 : -1];int ary3[sizeof (struct p1) == sizeof (struct p2) ? 1 : -1];/* not ok */typedef struct u1 __attribute__ ((packed)) u1_t1; /* { dg-warning "attribute ignored" "" }*/typedef struct u1 u1_t2 __attribute__ ((packed)); /* { dg-warning "attribute ignored" "" }*/typedef struct p3 {   char  field1;   short field2;   int field3;} p3_t1 __attribute__ ((packed)); /* { dg-warning "attribute ignored" "" }*/

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?