This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc 4.1.2 is giving compilation error with unnamed structure of register const variable


Muralidhar <muralidharvvkmca@gmail.com> 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@gmail.com> 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
>> 
>> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]