inet/getnetgrent_r.c relies on assumption broken by gcc CVS mainline
Alexandre Oliva
aoliva@redhat.com
Fri Jul 9 05:52:00 GMT 2004
GCC's alias attribute wants an assembler symbol name as the target, as
evidenced by the need for supplying a mangled name when aliasing to
C++ symbols. However, for a symbol with internal linkage, such as a
static symbol, the compiler can choose whatever name it likes. In
fact, when you compile multiple source files with the -combine option,
GCC absolutely *must* rename static symbols that happen to have the
same name in different translation units.
I suggest that glibc stops relying on this assumption, otherwise it
probably won't build with the next major release of GCC. It currently
fails for the file that the patch below fixes. Ok to install?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: inet-getnetgrent-no-alias-to-static.patch
Type: text/x-patch
Size: 2350 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20040709/25baf350/attachment.bin>
-------------- next part --------------
--
Alexandre Oliva http://www.ic.unicamp.br/~oliva/
Red Hat Compiler Engineer aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist oliva@{lsd.ic.unicamp.br, gnu.org}
More information about the Libc-alpha
mailing list