Package: gcc I'm not really sure what the correct package is for this bug (if it's a bug). Please reassign as needed.
In researching bug #484138, I realized that gcc on arm appears to be configured to pad structures at 32-bit boundaries. The following program: ------------------------------ #include <stdio.h> typedef struct { unsigned short a, b, c; } A; int main() { printf("%d\n", sizeof(A)); return 0; } ------------------------------ prints "8" on agnesi.debian.org in an etch or sid chroot. It prints 6 on my ix86 box and also on agricola.debian.org, an armel system. I can get the above program to print 6 on agnesi as well by compiling with "gcc -mstructure-size-boundary=8", but I'm not sure why this should be necessary. There's nothing in the gcc output that suggests why it is happening. Here's the output of gcc -v on a sid chroot on agnesi. ---------------------------------------------------------------------- Using built-in specs. Target: arm-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 4.3.0-5' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --disable-libssp --enable-checking=release --build=arm-linux-gnu --host=arm-linux-gnu --target=arm-linux-gnu Thread model: posix gcc version 4.3.1 20080523 (prerelease) (Debian 4.3.0-5) COLLECT_GCC_OPTIONS='-v' /usr/lib/gcc/arm-linux-gnu/4.3.1/cc1 -quiet -v a.c -quiet -dumpbase a.c -auxbase a -version -o /tmp/ccMZwsRl.s ignoring nonexistent directory "/usr/local/include/arm-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/arm-linux-gnu/4.3.1/../../../../arm-linux-gnu/include" ignoring nonexistent directory "/usr/include/arm-linux-gnu" #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/lib/gcc/arm-linux-gnu/4.3.1/include /usr/lib/gcc/arm-linux-gnu/4.3.1/include-fixed /usr/include End of search list. GNU C (Debian 4.3.0-5) version 4.3.1 20080523 (prerelease) (arm-linux-gnu) compiled by GNU C version 4.3.1 20080523 (prerelease), GMP version 4.2.2, MPFR version 2.3.1. GGC heuristics: --param ggc-min-expand=34 --param ggc-min-heapsize=7690 Compiler executable checksum: 7e1491e820500274f4e85f459af6289f COLLECT_GCC_OPTIONS='-v' as -o /tmp/ccxzGJhC.o /tmp/ccMZwsRl.s COMPILER_PATH=/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-v' /usr/lib/gcc/arm-linux-gnu/4.3.1/cc1 -quiet -v a.c -quiet -dumpbase a.c -auxbase a -version -o /tmp/ccMZwsRl.s ignoring nonexistent directory "/usr/local/include/arm-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/arm-linux-gnu/4.3.1/../../../../arm-linux-gnu/include" ignoring nonexistent directory "/usr/include/arm-linux-gnu" #include "..." search starts here: #include <...> search starts here: /usr/local/include /usr/lib/gcc/arm-linux-gnu/4.3.1/include /usr/lib/gcc/arm-linux-gnu/4.3.1/include-fixed /usr/include End of search list. GNU C (Debian 4.3.0-5) version 4.3.1 20080523 (prerelease) (arm-linux-gnu) compiled by GNU C version 4.3.1 20080523 (prerelease), GMP version 4.2.2, MPFR version 2.3.1. GGC heuristics: --param ggc-min-expand=34 --param ggc-min-heapsize=7690 Compiler executable checksum: 7e1491e820500274f4e85f459af6289f COLLECT_GCC_OPTIONS='-v' as -o /tmp/ccxzGJhC.o /tmp/ccMZwsRl.s COMPILER_PATH=/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/ LIBRARY_PATH=/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/:/usr/lib/gcc/arm-linux-gnu/4.3.1/../../../:/lib/:/usr/lib/ COLLECT_GCC_OPTIONS='-v' /usr/lib/gcc/arm-linux-gnu/4.3.1/collect2 --eh-frame-hdr -dynamic-linker /lib/ld-linux.so.2 -X -m armelf_linux -p /usr/lib/gcc/arm-linux-gnu/4.3.1/../../../crt1.o /usr/lib/gcc/arm-linux-gnu/4.3.1/../../../crti.o /usr/lib/gcc/arm-linux-gnu/4.3.1/crtbegin.o -L/usr/lib/gcc/arm-linux-gnu/4.3.1 -L/usr/lib/gcc/arm-linux-gnu/4.3.1 -L/usr/lib/gcc/arm-linux-gnu/4.3.1/../../.. /tmp/ccxzGJhC.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/arm-linux-gnu/4.3.1/crtend.o /usr/lib/gcc/arm-linux-gnu/4.3.1/../../../crtn.o ---------------------------------------------------------------------- -- Jay Berkenbilt <[EMAIL PROTECTED]> -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]