{
// Add elements from the work list to the referenced list
// one by one.
- Section_id entry = this->worklist().front();
- this->worklist().pop();
- if (this->referenced_list().find(entry)
- == this->referenced_list().end())
- {
- this->referenced_list().insert(entry);
- }
- else
- {
- continue;
- }
+ Section_id entry = this->worklist().back();
+ this->worklist().pop_back();
+ if (!this->referenced_list().insert(entry).second)
+ continue;
Garbage_collection::Section_ref::iterator find_it =
this->section_reloc_map().find(entry);
if (find_it == this->section_reloc_map().end())
if (this->referenced_list().find(*it_v)
== this->referenced_list().end())
{
- this->worklist().push(*it_v);
+ this->worklist().push_back(*it_v);
}
}
}