------- Comment #4 from jakub at gcc dot gnu dot org 2010-08-11 12:46 ------- I don't see the standard saying that anywhere.
"A DW_AT_external attribute, which is a flag, if the name of a variable is visible outside of its enclosing compilation unit." "If the name of the subroutine described by an entry with the tag DW_TAG_subprogram is visible outside of its containing compilation unit, that entry has a DW_AT_external attribute, which is a flag." Nothing says that the variable/function has to be defined in that compilation unit. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45153