https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80826
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target|Red Hat 7 Linux x86 64bit | Status|UNCONFIRMED |NEW Version|4.8.5 |5.4.1 Keywords| |compile-time-hog, | |memory-hog Last reconfirmed| |2017-05-19 Component|c++ |libstdc++ Host|Red Hat 7 Linux x86 64bit | Ever confirmed|0 |1 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- GCC 6 and GCC 7 (even with -std=c++98) behave more reasonably here. -std=c++14 helps reducing memory use and compile-time (still uses 700MB and a couple of seconds for the compile though). GCC 5 takes a long time with c++98 (didn't wait long enough to get an idea on memory use), it's reasonable with -std=c++14 here as well. Note even GCC 4.8 with -std=c++14 behaves reasonably (but c++98 seems to behave as GCC 5 does). Thus confirmed for GCC 5 (which is the oldest release we still care for btw). I think memory use and compile-time is still unreasonable for GCC 6 and 7. clang 3.8 also uses more than 10GB with -std=c++98 (had to interrupt here). c++14 doesn't help clang. Using libc++ helps it (with c++14), so changing component. In the end it might be your fault (in using C++ ...) ;)