[Bug c/92063] New: [10 Regression] ICE in operation_could_trap_p, at tree-eh.c:2528 when compiling Python's Python/_warnings.c

romain.geissler at amadeus dot com gcc-bugzilla@gcc.gnu.org
Fri Oct 11 07:52:00 GMT 2019


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


More information about the Gcc-bugs mailing list