An ld bug?

Ian Lance Taylor ian@cygnus.com
Tue Oct 3 07:25:00 GMT 1995


   From: hjl@nynexst.com (H.J. Lu)

   It seems gas-950822 doesn't treat common symbols right. Does the newer
   snapshot still have this bug? BTW, I tested it under i486-linux.

It only takes you a minute to note what you think is incorrect about
the program.  Please do that, rather than making me figure out what
the problem is.  Thanks.

In this case, I assume that you think that the common symbol in the
object file should cause the object in the archive to be brought in.
That's the way in works in a.out, but it is not the way it works in
ELF.  In ELF, objects are only brought in from archives to fill
references by undefined symbols.

However, interestingly, I tested the program on Irix 5, UnixWare, and
Solaris, and, on Solaris, it works the way it does in a.out.  I assume
this is for SunOS compatibility.  It happens to contradict the Solaris
linker documentation: ``For an archive library, only those routines
defining an unresolved external reference are loaded.''

Ian




More information about the Gas2 mailing list