[Bug libstdc++/86272] [6/7/8/9 Regression] __gnu_debug::string uses undefined __glibcxx_check_insert_range2

redi at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Jun 22 09:35:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86272

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Oh, also I noticed that __gnu_debug::string probably doesn't work with
_GLIBCXX_USE_CXX11_ABI=0 because it provides the C++11 API, e.g. insert takes
const_iterator not iterator, and returns non-void. The _Base string doesn't
meet that interface when using _GLIBCXX_USE_CXX11_API=0.

I don't consider that a bug - the old std::string has a number of
non-conformance issues, and I don't plan to address them. If you want a proper
C++11 std::string you need to enable the new ABI, because that's why it exists.


More information about the Gcc-bugs mailing list