https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106392
--- Comment #3 from Benjamin Priour <vultkayn at gcc dot gnu.org> --- > I think the unordered containers might be too hard. I would start with > std::vector, as that will probably give the best return on investment of > effort. > Indeed, I just found these slides from clang https://llvm.org/devmtg/2018-04/slides/Balogh-Finding%20Iterator-related%20Errors%20with%20Clang%20Static%20Analyzer.pdf They seem to be dividing the containers into 3 categories, list-like, vector-like and deque-like, thus also sticking to ordered containers. But they also are kind of brute-forcing the checks it seems, as they say upon insertion or deletion, they check every iterator position of the container. It sounds overly expensive to me, particularly for lists. Surely there is a reason they are doing that, I'm looking into it.