This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
I am not sure if this is a valid pragma in gcc but I have always used on other compilers: #pragma pack(4) struct { U32 x; U8 y } #pragma pack() This forces the structure to be built using a multiple of 4 bytes, i.e 8 bytes. Change the 4 to a 1 and it will be build on a multiple of 1 byte (i.e. no extra space) 5 bytes. "#pragma pack()" with no args restores the default of the compiler -mike > -----Original Message----- > From: crossgcc-owner@sources.redhat.com > [mailto:crossgcc-owner@sources.redhat.com]On Behalf Of Cliff Tsai > Sent: Thursday, May 24, 2001 6:42 AM > To: crossgcc > Subject: sizeof different in x86 and arm. > > > Hi: > I have a simple struct as follow > > struct test_align > { > unsigned char Name[21]; > unsigned char Version[8]; > }; > > But on cygwin for x86,the sizeof(struct test_align) is 29; > > but on cygwin for arm,the sizeof(struct test_align) return 32 > > WHY. > > > > > > ------ > Want more information? See the CrossGCC FAQ, > http://www.objsw.com/CrossGCC/ > Want to unsubscribe? Send a note to > crossgcc-unsubscribe@sourceware.cygnus.com > ------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |