result.insert(mp);
// Remove the symbol now that its been resolved, being careful to
- // not invalidate our iterator.
- std::set<std::string>::iterator save = I;
- ++I;
- symbols.erase(save);
+ // post-increment the iterator.
+ symbols.erase(I++);
} else {
++I;
}
result.insert(mp);
// Remove the symbol now that its been resolved, being careful to
- // not invalidate our iterator.
- std::set<std::string>::iterator save = I;
- ++I;
- symbols.erase(save);
+ // post-increment the iterator.
+ symbols.erase(I++);
} else {
++I;
}