Avoid emitting bogus debug info that confuses gdb.
PR c++/20805 * dwarf2out.c (gen_variable_die): Don't emit a specification if this is another declaration. From-SVN: r98473
This commit is contained in:
parent
78ecf64c1b
commit
4424eb9148
@ -11615,8 +11615,13 @@ gen_variable_die (tree decl, dw_die_ref context_die)
|
||||
copy decls and set the DECL_ABSTRACT flag on them instead of
|
||||
sharing them.
|
||||
|
||||
??? Duplicated blocks have been rewritten to use .debug_ranges. */
|
||||
else if (old_die && TREE_STATIC (decl)
|
||||
??? Duplicated blocks have been rewritten to use .debug_ranges.
|
||||
|
||||
??? The declare_in_namespace support causes us to get two DIEs for one
|
||||
variable, both of which are declarations. We want to avoid considering
|
||||
one to be a specification, so we must test that this DIE is not a
|
||||
declaration. */
|
||||
else if (old_die && TREE_STATIC (decl) && ! declaration
|
||||
&& get_AT_flag (old_die, DW_AT_declaration) == 1)
|
||||
{
|
||||
/* This is a definition of a C++ class level static. */
|
||||
|
Loading…
Reference in New Issue
Block a user