https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101108
Bug ID: 101108 Summary: ICE: segmentation fault: gimplify_target_expr, gimplify.c:6760 Product: gcc Version: tree-ssa Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: cnsun at uwaterloo dot ca Target Milestone: --- $ gcc-trunk -v Using built-in specs. COLLECT_GCC=gcc-trunk COLLECT_LTO_WRAPPER=/scratch/software/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/12.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/configure --enable-languages=c,c++,lto --enable-checking-yes --enable-multiarch --prefix=/scratch/software/gcc-trunk --disable-bootstrap Thread model: posix Supported LTO compression algorithms: zlib gcc version 12.0.0 20210617 (experimental) [master revision :7d4a310d9:9a61dfdb5ecb58bc4caea1c11e017d93bdd1d9a5] (GCC) $ cat mutant.c #include <stdatomic.h> test_ptr(void *p) { atomic_int j; j += *p; } $ gcc-trunk mutant.c mutant.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 2 | test_ptr(void *p) { | ^~~~~~~~ mutant.c: In function ‘test_ptr’: mutant.c:4:8: warning: dereferencing ‘void *’ pointer 4 | j += *p; | ^~ mutant.c:4:3: error: void value not ignored as it ought to be 4 | j += *p; | ^ mutant.c:4:5: internal compiler error: Segmentation fault 4 | j += *p; | ^~ 0xf0b603 crash_signal /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/toplev.c:327 0xc43442 gimplify_target_expr /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6760 0xc34f32 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:14491 0xc383fa gimplify_stmt(tree_node**, gimple**) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6865 0xc359fb gimplify_statement_list /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:1887 0xc359fb gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:14539 0xc383fa gimplify_stmt(tree_node**, gimple**) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6865 0xc38829 gimplify_compound_expr /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6065 0xc35563 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:14084 0xc383fa gimplify_stmt(tree_node**, gimple**) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6865 0xc359fb gimplify_statement_list /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:1887 0xc359fb gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:14539 0xc383fa gimplify_stmt(tree_node**, gimple**) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6865 0xc38c2e gimplify_bind_expr /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:1426 0xc34e63 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:14295 0xc383fa gimplify_stmt(tree_node**, gimple**) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:6865 0xc399f3 gimplify_body(tree_node*, bool) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:15339 0xc39e41 gimplify_function_tree(tree_node*) /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/gimplify.c:15493 0xa8b6d7 cgraph_node::analyze() /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/cgraphunit.c:670 0xa8e601 analyze_functions /tmp/tmp.fE7wx4xftU-gcc-builder/gcc/gcc/cgraphunit.c:1234 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.