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

            Bug ID: 115077
           Summary: bootstrap fails with in-tree isl-0.25/6
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P3
         Component: bootstrap
          Assignee: unassigned at gcc dot gnu.org
          Reporter: iains at gcc dot gnu.org
  Target Milestone: ---

see also this thread: https://gcc.gnu.org/pipermail/gcc/2024-May/243949.htm
version 0.25 and 0.26 have test cases that require c++17 support.

Essentially we have a stage1 bootstrap fail with errors of the form
"
/src-local/gcc-master/isl/isl_test_cpp17-generic.cc: In function ‘isl::id
construct_id(isl::ctx, bool*)’:
/src-local/gcc-master/isl/isl_test_cpp17-generic.cc:25:24: error: no matching
function for call to ‘isl::id::id(isl::ctx&, const char [2],
std::shared_ptr<S>&)’
   25 |  isl::id id(ctx, "S", s);
"

because we are somehow mismatching the build flags and the configure ones.

=====

The isl configure checks for this support using AX_CXX_COMPILE_STDCXX_17 which
updates CXX to include the addition of -std=c++17, if that is required to
enable it.

The test cases are then added on HAVE_CXX17

The isl (stage1) Makefile contains (for an example on Darwin)

CXX = x86_64-apple-darwin21-g++ -std=c++11 -std=gnu++17
CXXCPP = x86_64-apple-darwin21-g++ -std=c++11 -std=gnu++17 -E

Which is correct.

However somehow we are overriding this in the actual build:

x86_64-apple-darwin21-g++ -std=c++11 -DHAVE_CONFIG_H   -I.
-I/src-local/gcc-master/isl -I/src-local/gcc-master/isl/include -Iinclude/
-I/src-local/gcc-master/gmp -I/scratch/12-mon-rosetta/gcc-master/./gmp   -O
-pipe -MT isl_test_cpp17.o -MD -MP -MF $depbase.Tpo -c -o isl_test_cpp17.o
/src-local/gcc-master/isl/isl_test_cpp17.cc &&\
mv -f $depbase.Tpo $depbase.Po

Reply via email to