> It's almost like the compiler is getting the initializer wrong. It's a > long shot, but I wonder if the presence of the bitfield could be > triggering a compiler bug (or there is a subtle C rule about bitfield > initializations that I do not know). Just for the sake of my sanity, > what does the following program output for you?
Hi, just "cmp is 0" is printed. $ gcc --version gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Best regards, Jongman Heo.