From 0eb971bd259728516731359bf8a4ac39512a0c30 Mon Sep 17 00:00:00 2001 From: James E Wilson Date: Sat, 19 Mar 2005 03:06:51 +0000 Subject: Fix problem that caused compiled java code to trigger an internal gdb error. PR c++/19769 * dwarf2out.c (declare_in_namespace): Ignore decls with an abstract origin. From-SVN: r96715 --- gcc/dwarf2out.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gcc/dwarf2out.c') diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 5157ae3..cc3c9f4 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -12557,6 +12557,12 @@ declare_in_namespace (tree thing, dw_die_ref context_die) if (debug_info_level <= DINFO_LEVEL_TERSE) return; + /* If this decl is from an inlined function, then don't try to emit it in its + namespace, as we will get confused. It would have already been emitted + when the abstract instance of the inline function was emitted anyways. */ + if (DECL_P (thing) && DECL_ABSTRACT_ORIGIN (thing)) + return; + ns_context = setup_namespace_context (thing, context_die); if (ns_context != context_die) -- cgit v1.1