https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92063
Bug ID: 92063 Summary: [10 Regression] ICE in operation_could_trap_p, at tree-eh.c:2528 when compiling Python's Python/_warnings.c Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: romain.geissler at amadeus dot com Target Milestone: --- Hi, I have an ICE in gcc 10 when trying to setup a GNU toolchain with current sources. It fails when trying to build Python 3.7.4. I don't have access to any build artefacts though, just the job logs. Gcc is built from r276854 on x64 Linux. Gcc itself is bootstrapped with LTO + PGO. Building gcc itself works fine (as well as building the LLVM toolchain, glibc, and binutils with that gcc). binutils: 2.33 glibc: 2.30 I am trying to build Python 3.7.4 from sources: gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -O2 -msse -msse2 -msse3 -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include/ncursesw -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/lib/libffi-3.2.1/include -I/opt/1A/toolchain/x86_64-v20.0.3/build-pack/20.0.3.0/internal-python-only-for-build-pack/include -Wno-error -O2 -msse -msse2 -msse3 -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include/ncursesw -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/lib/libffi-3.2.1/include -I/opt/1A/toolchain/x86_64-v20.0.3/build-pack/20.0.3.0/internal-python-only-for-build-pack/include -Wno-error -std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter -Wno-missing-field-initializers -Wno-cast-function-type -Wstrict-prototypes -Werror=implicit-function-declaration -IObjects -IInclude -IPython -I. -I/workdir/src/Python-3.7.4/Include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include/ncursesw -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/lib/libffi-3.2.1/include -I/opt/1A/toolchain/x86_64-v20.0.3/build-pack/20.0.3.0/internal-python-only-for-build-pack/include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/include/ncursesw -I/workdir/build/build-pack/build-pack-temporary-static-dependencies/install/lib/libffi-3.2.1/include -I/opt/1A/toolchain/x86_64-v20.0.3/build-pack/20.0.3.0/internal-python-only-for-build-pack/include -DPy_BUILD_CORE -o Python/_warnings.o /workdir/src/Python-3.7.4/Python/_warnings.c /workdir/src/Python-3.7.4/Python/_warnings.c: In function 'setup_context': /workdir/src/Python-3.7.4/Python/_warnings.c:753:13: internal compiler error: in operation_could_trap_p, at tree-eh.c:2528 753 | ascii_lower(PyUnicode_READ(kind, data, len-1)) == 'c') | ^~~~~~~~~~~ 0x5f2081 operation_could_trap_p(tree_code, bool, bool, tree_node*) /workdir/src/gcc-10.0.0/gcc/tree-eh.c:2528 0x5f2081 operation_could_trap_p(tree_code, bool, bool, tree_node*) /workdir/src/gcc-10.0.0/gcc/tree-eh.c:2518 0xef269a tree_could_trap_p(tree_node*) /workdir/src/gcc-10.0.0/gcc/tree-eh.c:2635 0xf960d1 simple_operand_p_2 /workdir/src/gcc-10.0.0/gcc/fold-const.c:4451 0xf91e62 fold_truth_andor /workdir/src/gcc-10.0.0/gcc/fold-const.c:8290 0xf1d2fd fold_binary_loc(unsigned int, tree_code, tree_node*, tree_node*, tree_node*) /workdir/src/gcc-10.0.0/gcc/fold-const.c:10606 0xf1be99 fold_build2_loc(unsigned int, tree_code, tree_node*, tree_node*, tree_node*) /workdir/src/gcc-10.0.0/gcc/fold-const.c:12382 0xf0bd53 c_fully_fold_internal /workdir/src/gcc-10.0.0/gcc/c/c-fold.c:535 0xf0bc4c c_fully_fold_internal /workdir/src/gcc-10.0.0/gcc/c/c-fold.c:513 0xf0bc4c c_fully_fold_internal /workdir/src/gcc-10.0.0/gcc/c/c-fold.c:513 0xf0ae6b c_fully_fold(tree_node*, bool, bool*, bool) /workdir/src/gcc-10.0.0/gcc/c/c-fold.c:125 0xf42a8a c_parser_condition /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5677 0xf420ce c_parser_paren_condition /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5695 0xf0793e c_parser_if_statement /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5874 0xf0793e c_parser_statement_after_labels /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5506 0xf033da c_parser_compound_statement_nostart /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5185 0xf00ac7 c_parser_compound_statement /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5019 0xf07f09 c_parser_if_body /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5749 0xf07f09 c_parser_if_statement /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5877 0xf07f09 c_parser_statement_after_labels /workdir/src/gcc-10.0.0/gcc/c/c-parser.c:5506 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. make: *** [Makefile:1643: Python/_warnings.o] Error 1 make: *** Waiting for unfinished jobs.... Note: it was working with a gcc 10 snapshot from 12 September 2019, which was configured similarly, and which "gcc -v" yields (this is working case): Reading specs from /remote/tools/Linux/2.6/1A/toolchain/x86_64-v20.0.2/bin/../lib/gcc/x86_64-1a-linux-gnu/10.0.0/specs COLLECT_GCC=/opt/1A/toolchain/x86_64-v20/bin/gcc COLLECT_LTO_WRAPPER=/remote/tools/Linux/2.6/1A/toolchain/x86_64-v20.0.2/bin/../libexec/gcc/x86_64-1a-linux-gnu/10.0.0/lto-wrapper Target: x86_64-1a-linux-gnu Configured with: /workdir/src/gcc-10.0.0/configure --build=x86_64-1a-linux-gnu --host=x86_64-1a-linux-gnu --target=x86_64-1a-linux-gnu --prefix=/opt/1A/toolchain/x86_64-v20.0.2 --with-local-prefix=/opt/1A/toolchain/x86_64-v20.0.2 --with-native-system-header-dir=/opt/1A/toolchain/x86_64-v20.0.2/include --enable-languages=c,c++,fortran --disable-multilib --enable-linker-build-id --with-linker-hash-style=gnu --enable-gnu-indirect-function --with-build-config=bootstrap-lto --enable-install-libiberty --enable-checking=release Thread model: posix Supported LTO compression algorithms: zlib gcc version 10.0.0 20190912 (experimental) (GCC) Cheers, Romain