debug7.ads
145 Bytes
-
DWARF: move pessimistic DWARF version checks for imported entities · 7e8000b3
A check in dwarf2out_imported_module_or_decl prevents DW_TAG_imported_module from being emitted as it was introduced in the DWARFv3 standard. However, this also prevents valid strict DWARFv2 constructs such as DW_TAG_imported_declaration from being emitted in dwarf2out_imported_module_or_decl_1. The latter already protects the emission of newer DWARF tags with appropriate checks, so the one in the former is redundant and pessimistic. This function is already called from places like process_scope_var, which are not protected anyway. This patch moves the check in dwarf2out_imported_module_or_decl so that in strict DWARFv2 mode, tags like DW_TAG_imported_declaration are emitted while DW_TAG_imported_module are not. gcc/ * dwarf2out.c (dwarf2out_imported_module_or_decl): Move DWARF version check to protect only DW_TAG_imported_module generation. gcc/testsuite/ * gnat.dg/debug7.adb, gnat.dg/debug7.ads: New testcase. From-SVN: r240772
Pierre-Marie de Rodat committed