Hi, I have successfully built GCC 4.8.4 based on the following lib versions: gmp 6.0.0a mpfr 3.1.2 (patched) mpc 1.0.3 isl 0.14 osl 0.9.0 cloog 0.18.3 I am aware of ISL's api change, and was happily surprised it did not prevent compilation of gcc 4.8.4, but when compiling 4.9.2 it fails. Is there a workaround? a simple one is preferable. My configure line: build492]$ ../gcc-4.9.2/configure --prefix=/opt/gnu/gcc/4.9.2 --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-mpc=/opt/gnu/mpc/1.0.3 -with-mpfr=/opt/gnu/mpfr/3.1.2 --with-gmp=/opt/gnu/gmp/6.0.0 --with-cloog=/opt/gnu/cloog/0.18.3 --with-isl=/opt/gnu/isl/0.14 --enable-lto --with-arch_32=i686 --with-arch=native --with-tune=native --build=x86_64-redhat-linux-gnu --disable-isl-version-check my OS: RHEL 6.6 x64 the error output: g++ -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -I. -I. -I../../gcc-4.9.2/gcc -I../../gcc-4.9.2/gcc/. -I../../gcc-4.9.2/gcc/../include -I../../gcc-4.9.2/gcc/../libcpp/include -I/opt/gnu/gmp/6.0.0/include -I/opt/gnu/mpfr/3.1.2/include -I/opt/gnu/mpc/1.0.3/include -I../../gcc-4.9.2/gcc/../libdecnumber -I../../gcc-4.9.2/gcc/../libdecnumber/bid -I../libdecnumber -I../../gcc-4.9.2/gcc/../libbacktrace -DCLOOG_INT_GMP -I/opt/gnu/cloog/0.18.3/include -I/opt/gnu/isl/0.14/include -o graphite-clast-to-gimple.o -MT graphite-clast-to-gimple.o -MMD -MP -MF ./.deps/graphite-clast-to-gimple.TPo ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c: In function ‘void compute_bounds_for_param(scop_p, int, __mpz_struct*, __mpz_struct*)’: ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:874:3: error: ‘isl_int’ was not declared in this scope isl_int v; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:874:11: error: expected ‘;’ before ‘v’ isl_int v; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:880:17: error: ‘v’ was not declared in this scope isl_int_init (v); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:880:18: error: ‘isl_int_init’ was not declared in this scope isl_int_init (v); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:881:38: error: ‘isl_set_min’ was not declared in this scope isl_set_min (scop->context, aff, &v); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:882:26: error: ‘isl_int_get_gmp’ was not declared in this scope isl_int_get_gmp (v, low); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:883:38: error: ‘isl_set_max’ was not declared in this scope isl_set_max (scop->context, aff, &v); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:885:19: error: ‘isl_int_clear’ was not declared in this scope isl_int_clear (v); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c: In function ‘void compute_bounds_for_loop(clast_for*, __mpz_struct*, __mpz_struct*)’: ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:904:3: error: ‘isl_int’ was not declared in this scope isl_int isl_value; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:904:11: error: expected ‘;’ before ‘isl_value’ isl_int isl_value; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:905:8: error: use of enum ‘isl_lp_result’ without previous declaration enum isl_lp_result lp_result; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:905:31: error: invalid type in declaration before ‘;’ token enum isl_lp_result lp_result; ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:914:17: error: ‘isl_value’ was not declared in this scope isl_int_init (isl_value); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:914:26: error: ‘isl_int_init’ was not declared in this scope isl_int_init (isl_value); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:916:57: error: ‘isl_set_min’ was not declared in this scope lp_result = isl_set_min (domain, dimension, &isl_value); ^ In file included from /opt/gnu/cloog/0.18.3/include/cloog/int.h:4:0, from /opt/gnu/cloog/0.18.3/include/cloog/cloog.h:45, from ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:31: ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:917:24: error: ‘isl_lp_ok’ was not declared in this scope assert (lp_result == isl_lp_ok); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:918:34: error: ‘isl_int_get_gmp’ was not declared in this scope isl_int_get_gmp (isl_value, low); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:920:57: error: ‘isl_set_max’ was not declared in this scope lp_result = isl_set_max (domain, dimension, &isl_value); ^ ../../gcc-4.9.2/gcc/graphite-clast-to-gimple.c:924:27: error: ‘isl_int_clear’ was not declared in this scope isl_int_clear (isl_value); ^ make[3]: *** [graphite-clast-to-gimple.o] Error 1 make[3]: Leaving directory `/home/il872011/Downloads/gcc/gcc/build492/gcc' make[2]: *** [all-stage1-gcc] Error 2 make[2]: Leaving directory `/home/il872011/Downloads/gcc/gcc/build492' make[1]: *** [stage1-bubble] Error 2 make[1]: Leaving directory `/home/il872011/Downloads/gcc/gcc/build492' make: *** [all] Error 2 ---------------- Regarding ISL api change: http://isl.gforge.inria.fr/user.html#Changes-since-isl-0.12 I suspect the first issue (isl_int replaced by isl_val) to be the culprit, but not sure if a simple replace (e.g. via sed) is appropriate, or if type casting or some other black incantations required.