Bad linker behaviour

Ian Lance Taylor ian@cygnus.com
Thu Oct 9 16:37:00 GMT 1997


   From: marcus@bighorn.dr.lucent.com
   Date: Thu, 9 Oct 1997 08:41:54 -0600

   When gcc compiles a file, there are two symbols that it adds to the object
   module, `___gnu_compiled_c' and `gcc2_compiled.'.  For a C++ file, I see
   that `__gnu_compiled_cplusplus' and `gcc2_compiled.' are defined.  So, it
   seems that ld could watch for `___gnu_compiled_c' in an object file and
   flag it for removing the leading '_'  on symbols from that module, and
   if it sees `__gnu_compiled_cplusplus' it would demangle symbols from that
   object module, otherwise it would leave the symbol alone.

That sounds like a plausible idea to me.  I'm not sure how difficult
it would be to implement: I believe that there are a number of cases
that print a symbol name which do not have any record of which module
it was defined in.

I don't plan to implement this myself, but I would be happy to look at
patches for it.

Ian
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list