------- Additional Comments From hjl at lucon dot org 2004-11-29 18:47 ------- There are only 2 assemblers supported on ia64, GNU assembler and Intel assembler. If GNU assembler is used, assemble_external is a no-op on Linux. On HPUX, the actual undefined symbol references are outputed at the very end. This patch
http://gcc.gnu.org/ml/gcc-patches/2004-11/msg02511.html will make Linux + Intel assembler to do the same. So, on ia64, it should be OK to rename a symbol even after assemble_external is called as long as it hasn't been actually used, in which case, you should get x.i:8: warning: foo renamed after being referenced in assembly -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17982