This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/26591] New: Spurious parse error message with register struct .
- From: "ramana dot radhakrishnan at codito dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 7 Mar 2006 10:36:18 -0000
- Subject: [Bug c/26591] New: Spurious parse error message with register struct .
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Derived from gdb/testsuite/gdb.base/store.c :
struct s_3 { short s[3]; } z_3, s_3;
struct s_3
add_struct_3 (struct s_3 s)
{
int i;
for (i = 0; i < sizeof (s) / sizeof (s.s[0]); i++)
{
s.s[i] = s.s[i] + s.s[i];
}
return s;
}
struct s_3
wack_struct_3 (void)
{
int i; register struct s_3 u = z_3;
for (i = 0; i < sizeof (s_3) / sizeof (s_3.s[0]); i++) { s_3.s[i] = i + 1; }
u = add_struct_3 (u);
return u;
}
Compiling this with arm-none-eabi-gcc gives :
try.c: In function 'wack_struct_3':
try.c:41: error: address of register variable 'u' requested
3.4.5 and 4.0 seem to compile this ok. Its possibly related to the fix for
#18160 .
--
Summary: Spurious parse error message with register struct .
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ramana dot radhakrishnan at codito dot com
GCC build triplet: i686-linux-gnu
GCC host triplet: i686-linux-gnu
GCC target triplet: arm-none-eabi
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26591