target/6569: sparc-sun-solaris2.7 C testsuite regression in compile/20011119-2.c
Franz Sirl
Franz.Sirl-kernel@lauterbach.com
Tue May 7 06:15:00 GMT 2002
At 14:45 07.05.2002, Kaveh R. Ghazi wrote:
> > From: Mark Mitchell <mark@codesourcery.com>
> >
> > >> Can you try the attached patch? It seems to work for me, but the
> > >> bootstrap hasn't completed yet. While I was at it, I improved the
> > >> placing of the warning messages. I'm still a bit confused, cause it
> > >> sometimes seems olddecl and newdecl appeared to be swapped compared to
> > >> their sourcefile ordering.
> > >
> > > FYI, bootstrap+regtest on x86-linux-gnu completed successfully.
> >
> > OK; once you have confirmation of the SPARC results go ahead and check it
> > in.
>
>Unfortunately, the patch did not solve the problem listed in the PR.
>I still get the same 'as' errors from compile/20011119-2.c
>
>compile/20011119-2.c:3: warning: weak declaration of `foo' after first use
>results in unspecified behavior
>/usr/ccs/bin/as: "/var/tmp//ccQOIg1d.s", line 51: error: invalid operand
>--------------------------------------------------^^^^^
Yeah, I managed to get access to a solaris-2.8 machine, even though I
wasn't able to bootstrap with Solaris as/ld (see below), I was able to
reproduce the failure. Re-checking on x86-linux-gnu revealed that it even
doesn't fix the problem there, so I must have mixed something up yesterday.
Frankly, I'm a bit at a loss here, cause I've tried several strategies
yesterday and they either didn't fix the testcase or caused some of the
weak tests to fail. Especially I tried to use the TREE_USED flag of the
WEAK_DECLS TREE_LIST to mark when a weak already had been assembled, but it
didn't work out :-(. I seem to misunderstand something about how the tree
structures are handled.
Franz.
PS:
The bootstrap failure with solaris-2.8 as/ld and configured with:
--enable-shared \
--enable-threads \
--with-system-zlib \
--with-libiconv-prefix=/usr/local \
sparc-sun-solaris2.8
This results in:
...
strcpy 0x42c
.libs/libstdc++.lax/libsupc++convenience.a/dyn-string.o
strdup 0x694
.libs/libstdc++.lax/libsupc++convenience.a/cxa_demangle.o
__iob 0x45e8
.libs/libstdc++.lax/libsupc++convenience.a/cxa_demangle.o
__iob 0x4634
.libs/libstdc++.lax/libsupc++convenience.a/cxa_demangle.o
__iob 0x4644
.libs/libstdc++.lax/libsupc++convenience.a/cxa_demangle.o
__iob 0x4654
.libs/libstdc++.lax/libsupc++convenience.a/cxa_demangle.o
ld: fatal: relocations remain against allocatable but non-writable sections
collect2: ld returned 1 exit status
make[4]: *** [libstdc++.la] Error 1
make[4]: Leaving directory
`/home/gnu/obj/gcc31/sparc-sun-solaris2.8/libstdc++-v3/src'
More information about the Gcc-bugs
mailing list