Thanks a lot Ian for information. It helped me to fix the issue. --Murali. Ian Lance Taylor-3 wrote: > > 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 >>> >>> > > -- View this message in context: http://www.nabble.com/gcc-4.1.2-is-giving-compilation-error-with-unnamed-structure-of-register-const-variable-tp24647967p24658376.html Sent from the gcc - Help mailing list archive at Nabble.com.