diff options
Diffstat (limited to 'gcc/dwarfout.c')
-rw-r--r-- | gcc/dwarfout.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c index 400dc785ca1..fafbcaa926f 100644 --- a/gcc/dwarfout.c +++ b/gcc/dwarfout.c @@ -4791,6 +4791,13 @@ output_decl (decl, containing_scope) output_type (origin, containing_scope); } + /* If we're emitting an out-of-line copy of an inline function, + set up to refer to the abstract instance emitted from + note_deferral_of_defined_inline_function. */ + if (DECL_INLINE (decl) && ! DECL_ABSTRACT (decl) + && ! (containing_scope && TYPE_P (containing_scope))) + set_decl_origin_self (decl); + /* If the following DIE will represent a function definition for a function with "extern" linkage, output a special "pubnames" DIE label just ahead of the actual DIE. A reference to this label @@ -5084,6 +5091,10 @@ output_decl (decl, containing_scope) output_die (output_formal_parameter_die, decl); break; + case NAMESPACE_DECL: + /* Ignore for now. */ + break; + default: abort (); } |