[Bug 1652] gcc 4.5.1 has new issue
bugzilla-daemon at rtems.org
bugzilla-daemon at rtems.org
Fri Aug 6 07:36:49 UTC 2010
https://www.rtems.org/bugzilla/show_bug.cgi?id=1652
--- Comment #3 from Ralf Corsepius <ralf.corsepius at rtems.org> 2010-08-06 02:36:47 CDT ---
(In reply to comment #2)
> Apparently this only impacts the powerpc 8xx BSPs. Please build with
> all tests enabled.
>
> $ grep -l "section type conflict" log/*
> log/powerpc-mbx821_001.log
> log/powerpc-mbx821_002b.log
> log/powerpc-mbx821_002.log
> log/powerpc-mbx860_001b.log
> log/powerpc-mbx860_002.log
> log/powerpc-mbx860_005b.log
> log/powerpc-mbx860_1b.log
>
> It may be a gcc bug left unresolved by the PR. I have no idea.
I think the GCC bug and this bug probably are unrelated.
> If you
> can confirm this,
I can reproduce the bug, have managed to find a very simple reproducer and a
work-around in RTEMS ;)
Reproducer:
-- snip --
int pipe (int __fildes[2] );
void Init( void )
{
int fd[2] = {0};
pipe( fd );
}
const int rtems_filesystem_mount_table_size = 1;
-- snip --
Save this as test.c and compile this with
powerpc-rtems4.11-gcc -msdata -c test.c -o test.o
or any other powerpc-rtems*-gcc
I tried 4.8-4.11, all expose this issue.
Without -msdata, this issue does not show up.
A work-around for RTEMS is simple:
Replace "int fd[2] = {0};" with "int fd[2] = {0,0};"
i.e. expand the initializer.
To me this reads as: This issue seems to be related to handling of
incomplete initializers when -msdata is being used.
For now, I am going to expand the initializers being used in psxpipe01.c, which
lets building succeed for me.
--
Configure bugmail: https://www.rtems.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
More information about the bugs
mailing list