libstdc++ manual: These debugging containers are functionally equivalent to the standard drop-in containers used in debug mode [1]
me: but why isn't std::string detecting iterator invalidation, like __gnu_debug::string, what am I doing wrong :/
libstdc++ manual: *goes on a huge rant about how awesome libstdc++ is* ... The end result is that we have achieved per-use recompilation but have had to give up some checking of the std::basic_string class template (namely, safe iterators). [2]
me: why thanks for being so honest and upfront about that, I totally didn't waste all day looking into this thanks to you -_-
1. https://gcc.gnu.org/onlinedocs/libstdc++/manual/debug_mode_using.html#debug_mode.using.specific
2. https://gcc.gnu.org/onlinedocs/libstdc++/manual/debug_mode_design.html#debug_mode.design.methods.coexistence