------- Additional Comments From amodra at bigpond dot net dot au 2006-11-09 00:22 ------- Yes, it's clear to me that glibc has a bug here. I suspect that _dl_argv_internal should not have a definition in .bss. It's equally clear to me that gas cannot allow relocations to be emitted against symbols that have been removed from the gas symbol chain. Such symbols won't appear in the object symbol table, but the error message you now get since my 2006-11-08 gas patch is more than a little confusing.
$ gas/as-new /src/tmp/pr3469/x.s gas/as-new: a.out: symbol `_dl_argv_internal' required but not present /src/tmp/pr3469/x.s: Assembler messages: /src/tmp/pr3469/x.s:14: Fatal error: can't close a.out: No symbols However, I'm not sure what the best fix is. I was hoping you (Jan) could suggest one.. Incidentally, you can have the same trouble with redefining via equates. eg. .data .global x x = y .long x x = z .long x y: .long y z: .long z Also, there isn't really anything special about .global. Anything that stops the assembler from reducing a reloc to one against a section symbol will do, and some targets don't allow any reduction (see the various tc_fix_adjustable definitions). -- http://sourceware.org/bugzilla/show_bug.cgi?id=3469 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils