Muralidhar <muralidharvvkmca@xxxxxxxxx> writes: > Thanks for looking into this issue. The issue can be avioded by either > removing const or register from the declaration. but unfortunately i > required the combination of both in my testing snerious. Using the "register" qualifier makes very little sense. I can't understand why you would bother to test that. > Do we have any compiler option to avoid this bug. Not that I know of. Unless you count "-Dregister=". Ian > Ian Lance Taylor-3 wrote: >> >> Muralidhar <muralidharvvkmca@xxxxxxxxx> writes: >> >>> I have a sample program which is compiling fine in GCC version 3.3.3 >>> on SUSE Linux with kernel 2.6.5, >>> but it is giving compilation error in GCC version 4.1.2 with SUSE >>> Linux kernel 2.6.16 >>> >>> >>Sample program << >>> $ cat exam.c >>> #include <stdio.h> >>> int main() >>> { >>> register const struct { short l; unsigned char d[2]; } >>> vVRCU___I = { 2,"a" }; >>> register const struct { short l; char d[2]; } >>> vVRC____I = { 2,"a" }; >>> >>> return 0; >>> } >>> >>> $ gcc exam.c --> gcc 4.1.2 >>> exam.c: In function âmainâ: >>> exam.c:5: error: register name not specified for âvVRC____Iâ >>> exam.c:4: error: register name not specified for âvVRCU___Iâ >> >> I think this is a bug. >> >> To avoid the bug, remove the "register" keyword. There is no reason to >> ever use the "register" keyword with current versions of gcc. >> >> Ian >> >>