https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92484
Bug ID: 92484 Summary: In tree build of ISL 0.22 fails: requires C++11 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: romain.geissler at amadeus dot com Target Milestone: --- Hi, ISL 0.22 was released recently, and I tried to use it in builds of gcc 8, 9 and 10. It fails on all these three branches will millions of error, the first ones being: In file included from /home/jenkins/workspace/OTF_Toolchain_release_4.0/output/build/temporary-system/install/include/c++/8.3.1/type_traits:35, from /workdir/src/gcc-8.3.1/isl/include/isl/cpp.h:34, from /workdir/src/gcc-8.3.1/isl/isl_test_cpp.cc:16: /home/jenkins/workspace/OTF_Toolchain_release_4.0/output/build/temporary-system/install/include/c++/8.3.1/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options. #error This file requires compiler and library support \ ^~~~~ In file included from /workdir/src/gcc-8.3.1/isl/isl_test_cpp.cc:16: /workdir/src/gcc-8.3.1/isl/include/isl/cpp.h: In member function 'isl_ctx* isl::ctx::release()': /workdir/src/gcc-8.3.1/isl/include/isl/cpp.h:57:8: error: 'tmp' does not name a type; did you mean 'tm'? auto tmp = ptr; ^~~ tm /workdir/src/gcc-8.3.1/isl/include/isl/cpp.h:58:9: error: 'nullptr' was not declared in this scope ptr = nullptr; ^~~~~~~ /workdir/src/gcc-8.3.1/isl/include/isl/cpp.h:59:10: error: 'tmp' was not declared in this scope return tmp; ^~~ Obviously the problem is that isl seems to require C++11 now, and gcc is being built with C++98. Is there any official way to build gcc with another C++ standard by default ? And is in-tree build of libs like gmp/mpfr/mpc/isl still supported or officially declared deprecated and shall not be used anymore ? Cheers, Romain