PR debug/39387
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Mar 2009 09:48:25 +0000 (09:48 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Mar 2009 09:48:25 +0000 (09:48 +0000)
* dwarf2out.c (dwarf2out_imported_module_or_decl_1): For IMPORTED_DECL
take locus from its DECL_SOURCE_LOCATION instead of input_location.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144666 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/dwarf2out.c

index d2bb30f..8809bb7 100644 (file)
@@ -1,3 +1,9 @@
+2009-03-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/39387
+       * dwarf2out.c (dwarf2out_imported_module_or_decl_1): For IMPORTED_DECL
+       take locus from its DECL_SOURCE_LOCATION instead of input_location.
+
 2009-03-05  Bernd Schmidt  <bernd.schmidt@analog.com>
 
        * config/bfin/bfin.c (bfin_discover_loop): When retrying fails, mark
index 848926b..22852fa 100644 (file)
@@ -15490,7 +15490,10 @@ dwarf2out_imported_module_or_decl_1 (tree decl,
                            lexical_block_die,
                            lexical_block);
 
-  xloc = expand_location (input_location);
+  if (TREE_CODE (decl) == IMPORTED_DECL)
+    xloc = expand_location (DECL_SOURCE_LOCATION (decl));
+  else
+    xloc = expand_location (input_location);
   add_AT_file (imported_die, DW_AT_decl_file, lookup_filename (xloc.file));
   add_AT_unsigned (imported_die, DW_AT_decl_line, xloc.line);
   if (name)