From mboxrd@z Thu Jan 1 00:00:00 1970 From: jens.ohlund@secrc.abb.se To: crossgcc@sources.redhat.com Subject: Re: ARM and padding Date: Tue, 18 Jul 2000 02:14:00 -0000 Message-id: X-SW-Source: 2000-07/msg00094.html Hi ! It doesn't help. I've made a struct like this: struct { unsigned char buf[250] __attribute__ ((packed)); unsigned char currPos __attribute__ ((packed)); unsigned int remainingBytes __attribute__ ((packed)); unsigned char state __attribute__ ((packed)); } __attribute__ ((packed)) lowRx; And still, it's on the adresses: &buf[] = 0x241E0 &currPos = 0x242DA &remainingBytes = 0x242DC &state = 0x242DF Which makes the sizes: buf -> currPos = 250 currPos -> remainingBytes = 2 !!!!! remainingBytes -> state = 4 currPos -> remainingBytes should only be 1. This is just one struct out of many, with the same problem. I can change Some of them, as this example. But not many compared to amount of troublesome structs. yours Jens crossgcc-owner@sources.redhat.com 2000-07-18 10:38 To: jens.ohlund@secrc.abb.se cc: crossgcc@sourceware.cygnus.com Subject: Re: ARM and padding Security Level:? Internal >How do I tell the compiler that the structs are to be packed ? __attribute__ (( packed )). See the gcc manual. p. ------ 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