gcc/ChangeLog:
PR ipa/99003
* ipa-icf.c (sem_item::add_reference): Fix memory leak when
a reference exists.
unsigned index = reference_count++;
bool existed;
- vec<sem_item *> &v
- = refs->get_or_insert (new sem_usage_pair (target, index), &existed);
+ sem_usage_pair *pair = new sem_usage_pair (target, index);
+ vec<sem_item *> &v = refs->get_or_insert (pair, &existed);
+ if (existed)
+ delete pair;
+
v.safe_push (this);
bitmap_set_bit (target->usage_index_bitmap, index);
refs_set.add (target->node);