https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86164
--- Comment #15 from Nadav Har'El <nyh at math dot technion.ac.il> --- More than 5 years later, more and more projects are discovering this bug the hard way, and moving from std::regex to boost::regex which doesn't have this bug - boost::regex defaults to BOOST_REGEX_NON_RECURSIVE mode, which uses a stack on the heap instead of recursion (but I don't know if the specific examples shown the various duplicates all need this stack in practice, for example it's unfortunate if matching " *" needs to copy the entire input string in a stack). The latest example of this exodus is https://github.com/scylladb/scylladb/pull/13452. So I think it's about time this issue is solved. Maybe even the Boost implementation can studied for inspiration and implementation ideas?