http://sourceware.org/bugzilla/show_bug.cgi?id=12727

           Summary: ld ppc64 bug with dot symbols
           Product: binutils
           Version: 2.22 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
        AssignedTo: unassig...@sources.redhat.com
        ReportedBy: ja...@redhat.com


cat > test.c <<\EOF
extern char *dlerror (void);
volatile int i;

void _start (void)
{
  if (dlerror ())
    i++;
}
EOF
gcc -c -m64 test.c -o test.o
ld -o test -L . -ldl test.o -lc ./ld64.so.1
ld -o test -L . -ldl test.o -ldl -lc ./ld64.so.1
ld -o test -L . test.o -ldl -lc ./ld64.so.1
gcc -c -m64 -mcall=aixdesc -o test.o
ld -o test -L . -ldl test.o -lc ./ld64.so.1
ld -o test -L . -ldl test.o -ldl -lc ./ld64.so.1
ld -o test -L . test.o -ldl -lc ./ld64.so.1

(this assumes libc.so, libdl.so and ld64.so.1 are in current working directory,
and have been built with gcc that defaults to the new linux ABI (i.e. not
-mcall=aixdesc) and thus doesn't have .dlerror etc. symbols in it).
When test.o is built without dot symbols, all 3 ld commands succeed just fine,
when it is built with dot symbols and libdl.so.2 is not, only the command line
with -ldl solely after test.o succeeds.
Verified with today's CVS HEAD with a cross compiler, cross assembler and cross
linker, and is reported to be also present on RHEL6, which has ld based on
hjl's
2.20.51.0.2.  It is reported to succeed on RHEL5, which is based on
2.17.50.0.6.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to