summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErick Ochoa <erick.ochoa@theobroma-systems.com>2020-12-11 09:43:53 +0100
committerErick Ochoa <erick.ochoa@theobroma-systems.com>2020-12-11 09:43:53 +0100
commitefce0080ded3992438f6e79c7c65e47aedeca1b8 (patch)
tree9d6ae97e4e35e4975db7aed553e6dc7233be9ba9
parent8d7890ef92b1d188e7c0eaeea8c31076a86753da (diff)
iterator issue
-rw-r--r--gcc/ipa-dfe.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ipa-dfe.c b/gcc/ipa-dfe.c
index a6945b8e9bc..aa8d26b8cce 100644
--- a/gcc/ipa-dfe.c
+++ b/gcc/ipa-dfe.c
@@ -189,16 +189,25 @@ get_types_replacement (record_field_offset_map4_t &record_field_offset_map2,
type_stringifier stringifier;
type_reconstructor reconstructor (record_field_offset_map2, "reorg", map2, field_map2);
+
+ std::set<tree> temp;
for (hash_set<tree>::iterator i = to_modify.begin (),
e = to_modify.end ();
i != e; ++i)
{
+ temp.insert (*i);
+ }
+
+ for (std::set<tree>::const_iterator i = temp.begin (),
+ e = temp.end ();
+ i != e; ++i)
+ {
tree record = *i;
reconstructor.walk (TYPE_MAIN_VARIANT (record));
}
- for (hash_set<tree>::iterator i = to_modify.begin (),
- e = to_modify.end ();
+ for (std::set<tree>::const_iterator i = temp.begin (),
+ e = temp.end ();
i != e; ++i)
{
tree record = *i;