aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2007-12-22 20:58:30 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2007-12-22 20:58:30 +0000
commit680b30c7fe590e037b8df623e260370c07f8ccda (patch)
tree2af7d2a821643ac6a311ceeef28d59b66b994020 /gdb
parentbinutils/ (diff)
downloadbinutils-gdb-680b30c7fe590e037b8df623e260370c07f8ccda.tar.gz
binutils-gdb-680b30c7fe590e037b8df623e260370c07f8ccda.tar.bz2
binutils-gdb-680b30c7fe590e037b8df623e260370c07f8ccda.zip
* dwarf2read.c (scan_partial_symbols partial_die_parent_scope)
(add_partial_symbol, pdi_needs_namespace, process_die) (is_type_tag_for_partial, load_partial_dies, new_symbol) (read_type_die, determine_prefix): Extend the current code of `DW_TAG_class_type' also for `DW_TAG_interface_type'.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/dwarf2read.c10
2 files changed, 18 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 86be830e047..b5c6508b0f9 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2007-12-22 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * dwarf2read.c (scan_partial_symbols partial_die_parent_scope)
+ (add_partial_symbol, pdi_needs_namespace, process_die)
+ (is_type_tag_for_partial, load_partial_dies, new_symbol)
+ (read_type_die, determine_prefix): Extend the current code of
+ `DW_TAG_class_type' also for `DW_TAG_interface_type'.
+
2007-12-21 Paul N. Hilfinger <hilfinger@adacore.com>
* ada-lang.h (ada_renaming_category): New enumerated type.
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index e32e06707e8..48f02dd7670 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -1747,6 +1747,7 @@ scan_partial_symbols (struct partial_die_info *first_die, CORE_ADDR *lowpc,
}
break;
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
if (!pdi->is_declaration)
{
@@ -1829,6 +1830,7 @@ partial_die_parent_scope (struct partial_die_info *pdi,
if (parent->tag == DW_TAG_namespace
|| parent->tag == DW_TAG_structure_type
|| parent->tag == DW_TAG_class_type
+ || parent->tag == DW_TAG_interface_type
|| parent->tag == DW_TAG_union_type)
{
if (grandparent_scope == NULL)
@@ -1976,6 +1978,7 @@ add_partial_symbol (struct partial_die_info *pdi, struct dwarf2_cu *cu)
0, (CORE_ADDR) 0, cu->language, objfile);
break;
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
case DW_TAG_enumeration_type:
@@ -2057,6 +2060,7 @@ pdi_needs_namespace (enum dwarf_tag tag)
case DW_TAG_namespace:
case DW_TAG_typedef:
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
case DW_TAG_enumeration_type:
@@ -2676,6 +2680,7 @@ process_die (struct die_info *die, struct dwarf2_cu *cu)
read_lexical_block_scope (die, cu);
break;
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
read_structure_type (die, cu);
@@ -5403,6 +5408,7 @@ is_type_tag_for_partial (int tag)
#endif
case DW_TAG_base_type:
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_enumeration_type:
case DW_TAG_structure_type:
case DW_TAG_subrange_type:
@@ -5608,6 +5614,7 @@ load_partial_dies (bfd *abfd, gdb_byte *info_ptr, int building_psymtab,
|| last_die->tag == DW_TAG_enumeration_type
|| (cu->language != language_c
&& (last_die->tag == DW_TAG_class_type
+ || last_die->tag == DW_TAG_interface_type
|| last_die->tag == DW_TAG_structure_type
|| last_die->tag == DW_TAG_union_type))))
{
@@ -7358,6 +7365,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
(FIXME?) */
break;
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
case DW_TAG_set_type:
@@ -7677,6 +7685,7 @@ read_type_die (struct die_info *die, struct dwarf2_cu *cu)
switch (die->tag)
{
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
case DW_TAG_union_type:
read_structure_type (die, cu);
@@ -7781,6 +7790,7 @@ determine_prefix (struct die_info *die, struct dwarf2_cu *cu)
}
break;
case DW_TAG_class_type:
+ case DW_TAG_interface_type:
case DW_TAG_structure_type:
{
if (parent->type != NULL && TYPE_TAG_NAME (parent->type) != NULL)