summaryrefslogtreecommitdiff
path: root/gdb/dwarf2read.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2010-01-19 18:11:17 +0000
committerTom Tromey <tromey@redhat.com>2010-01-19 18:11:17 +0000
commitae83cea32df57dce749e0ed43ef66d98b1e348c2 (patch)
tree49b82301cf6fa37f223b867474f4821a447de3dc /gdb/dwarf2read.c
parentcce546478afe296ebbb69f208b708a8b3fe5f7e5 (diff)
downloadgdb-ae83cea32df57dce749e0ed43ef66d98b1e348c2.tar.gz
gdb
PR c++/8000: * dwarf2read.c (partial_die_parent_scope): Put enumeration type into parent scope, and enumerator into grandparent scope. gdb/testsuite PR c++/8000: * gdb.cp/namespace.exp: Use new enum. Fix line numbers in existing tests. * gdb.cp/namespace.cc (AAA::SomeEnum): New enum. (main): Use AAA::SomeEnum.
Diffstat (limited to 'gdb/dwarf2read.c')
-rw-r--r--gdb/dwarf2read.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 4903ac4a0b5..db516539029 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -2386,7 +2386,8 @@ partial_die_parent_scope (struct partial_die_info *pdi,
|| parent->tag == DW_TAG_structure_type
|| parent->tag == DW_TAG_class_type
|| parent->tag == DW_TAG_interface_type
- || parent->tag == DW_TAG_union_type)
+ || parent->tag == DW_TAG_union_type
+ || parent->tag == DW_TAG_enumeration_type)
{
if (grandparent_scope == NULL)
parent->scope = parent->name;
@@ -2394,7 +2395,7 @@ partial_die_parent_scope (struct partial_die_info *pdi,
parent->scope = typename_concat (&cu->comp_unit_obstack, grandparent_scope,
parent->name, cu);
}
- else if (parent->tag == DW_TAG_enumeration_type)
+ else if (parent->tag == DW_TAG_enumerator)
/* Enumerators should not get the name of the enumeration as a prefix. */
parent->scope = grandparent_scope;
else