aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2/read.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2023-12-02 17:19:55 -0700
committerTom Tromey <tom@tromey.com>2024-01-18 08:20:16 -0700
commit7da299f0c5a7cb1600835d8c482b0612cdd4db6a (patch)
treea6a9154086095b4d1b733412b8c3658d18ebceb5 /gdb/dwarf2/read.c
parentcd0dcd0cfd0bfd8762a686737195759e20b89e63 (diff)
downloadbinutils-7da299f0c5a7cb1600835d8c482b0612cdd4db6a.zip
binutils-7da299f0c5a7cb1600835d8c482b0612cdd4db6a.tar.gz
binutils-7da299f0c5a7cb1600835d8c482b0612cdd4db6a.tar.bz2
Remove IS_ENUM_CLASS from cooked_index_flag
I noticed that cooked_index_flag::IS_ENUM_CLASS is not needed. This patch removes it.
Diffstat (limited to 'gdb/dwarf2/read.c')
-rw-r--r--gdb/dwarf2/read.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c
index 84cbc1a..cac194d 100644
--- a/gdb/dwarf2/read.c
+++ b/gdb/dwarf2/read.c
@@ -4517,6 +4517,7 @@ private:
sect_offset *sibling_offset,
const cooked_index_entry **parent_entry,
CORE_ADDR *maybe_defer,
+ bool *is_enum_class,
bool for_specification);
/* Handle DW_TAG_imported_unit, by scanning the DIE to find
@@ -16162,6 +16163,7 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
sect_offset *sibling_offset,
const cooked_index_entry **parent_entry,
CORE_ADDR *maybe_defer,
+ bool *is_enum_class,
bool for_specification)
{
bool origin_is_dwz = false;
@@ -16245,7 +16247,7 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
case DW_AT_enum_class:
if (attr.as_boolean ())
- *flags |= IS_ENUM_CLASS;
+ *is_enum_class = true;
break;
case DW_AT_low_pc:
@@ -16355,7 +16357,8 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu,
else
scan_attributes (scanning_per_cu, new_reader, new_info_ptr,
new_info_ptr, new_abbrev, name, linkage_name,
- flags, nullptr, parent_entry, maybe_defer, true);
+ flags, nullptr, parent_entry, maybe_defer,
+ is_enum_class, true);
}
}
@@ -16507,6 +16510,7 @@ cooked_indexer::index_dies (cutu_reader *reader,
cooked_index_flag flags = IS_STATIC;
sect_offset sibling {};
const cooked_index_entry *this_parent_entry = parent_entry;
+ bool is_enum_class = false;
/* The scope of a DW_TAG_entry_point cooked_index_entry is the one of
its surrounding subroutine. */
@@ -16515,7 +16519,7 @@ cooked_indexer::index_dies (cutu_reader *reader,
info_ptr = scan_attributes (reader->cu->per_cu, reader, info_ptr,
info_ptr, abbrev, &name, &linkage_name,
&flags, &sibling, &this_parent_entry,
- &defer, false);
+ &defer, &is_enum_class, false);
if (abbrev->tag == DW_TAG_namespace
&& m_language == language_cplus
@@ -16585,9 +16589,7 @@ cooked_indexer::index_dies (cutu_reader *reader,
"enum_class::enumerator"; otherwise we inject the
names into our own parent scope. */
info_ptr = recurse (reader, info_ptr,
- ((flags & IS_ENUM_CLASS) == 0)
- ? parent_entry
- : this_entry,
+ is_enum_class ? this_entry : parent_entry,
fully);
continue;