https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79178
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |DUPLICATE Target Milestone|--- |6.0 --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- The whole point of the test is to see if those functions are available in C++98 mode. On some targets they are, and so the macro gets set. Using -std=c++11 for the configure tests would completely break things, because we would detect the functions are available, and then when someone compiles with -std=c++98 the functions would be missing and it would fail to compile. At least what happens today is some features are just not supported on MinGW, rather than -std=c++98 being completely unusable. If you look at GCC 6 you'll see separate tests for those functions using -std=c++98 and -std=c++11, defining separate macros _GLIBCXX98_USE_C99_STDLIB and _GLIBCXX11_USE_C99_STDLIB indicating whether the functions are available always, or only for C++11 and higher. So the solution for MinGW would be to use a newer GCC that already works much better for MinGW (and Cygwin too). *** This bug has been marked as a duplicate of bug 61580 ***