------- Comment #10 from danglin at gcc dot gnu dot org  2005-12-10 22:22 
-------
GCC is generating incorrect assembler code for the target of weak references.
For example, this is the declaration for "wf1":

extern ftype wf1;

I.e., it is declared as a function.  However, there is no .IMPORT emitted
for wf1, or its aliases Wf1a, Wf1b or Wf1c.  As a result, the assembler
has no way of knowing whether the symbol is code or data.  So, it ends up
as a data symbol.  

00000000 00000000 Data  Unsat  0 ......S...  3 00000 wf1

This would seem to indicate that ASM_OUTPUT_EXTERNAL wasn't used for wf1.
Failure to type assembler symbols correctly can often cause HP ld to dump
core.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24827

Reply via email to