This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: gcc 4.1.2 is giving compilation error with unnamed structure of register const variable
Thanks a lot Ian for information. It helped me to fix the issue.
--Murali.
Ian Lance Taylor-3 wrote:
>
> 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
>>>
>>>
>
>
--
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.