This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
The AArch64 and ARM glibc build is currently broken for trunk gcc. Both builds fail with link errors for the multiple definition of _dl_addr_inside_object. This is caused by the "Isolate erroneous paths optimization" patch recently added to gcc here: http://gcc.gnu.org/ml/gcc-patches/2013-10/msg02648.html One effect of this patch is to replace unreachable paths with a call to abort(). There is code in _dl_lookup_symbol_x() which may pass NULL to DSO_FILENAME(). This macro always dereferences the filename. The isolate erroneous paths cod in gcc inserts an abort() in place of the ill defined code. The linker subsequently pulls in a bunch of code from libpic.a, including the alternative definition of _dl_addr_inside_object. The convention elsewhere appears to be to pass "" rather than NULL. This patch seems obvious to me, I'll commit it tomorrow unless anyone objects. * elf/dl-lookup.c (_dl_lookup_symbol_x): Pass "" instead of NULL to DSO_FILENAME(). Cheers /Marcus
Attachment:
0002-DSO_FILENAME-expects-rather-than-NULL.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |