https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79757
Bug ID: 79757 Summary: ICE in declare_vars, at gimplify.c:634 Product: gcc Version: 7.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gerhard.steinmetz.fort...@t-online.de Target Milestone: --- With invalid code on x86_64 GNU/Linux and option -fsanitize=undefined or -fsanitize=integer-divide-by-zero, down to version 4.9 (configured with --enable-checking=yes) : $ cat z1.c void fn1 () { unsigned __int128 x, y; int a() //; unsigned long long z = x % y; } $ gcc-7-20170226 -fsanitize=undefined -c z1.c z1.c: In function 'a': z1.c:5:3: error: parameter 'z' is initialized unsigned long long z = x % y; ^~~~~~~~ z1.c:5:3: internal compiler error: Segmentation fault 0xbf9f9f crash_signal ../../gcc/toplev.c:337 0x96d463 gbind* as_a<gbind*, gimple>(gimple*) ../../gcc/is-a.h:192 0x96d463 declare_vars(tree_node*, gimple*, bool) ../../gcc/gimplify.c:634 0x94999a create_tmp_var(tree_node*, char const*) ../../gcc/gimple-expr.c:477 0xc1bce1 ubsan_encode_value(tree_node*, bool) ../../gcc/ubsan.c:146 0x757fa5 ubsan_instrument_division(unsigned int, tree_node*, tree_node*) ../../gcc/c-family/c-ubsan.c:100 0x69aeab build_binary_op(unsigned int, tree_code, tree_node*, tree_node*, int) ../../gcc/c/c-typeck.c:11834 0x69e7a6 parser_build_binary_op(unsigned int, tree_code, c_expr, c_expr) ../../gcc/c/c-typeck.c:3637 0x6bbd8a c_parser_binary_expression ../../gcc/c/c-parser.c:6818 0x6bc225 c_parser_conditional_expression ../../gcc/c/c-parser.c:6458 0x6bc980 c_parser_expr_no_commas ../../gcc/c/c-parser.c:6375 0x6c371a c_parser_initializer ../../gcc/c/c-parser.c:4351 0x6cfe5d c_parser_declaration_or_fndef ../../gcc/c/c-parser.c:1919 0x6d06ee c_parser_declaration_or_fndef ../../gcc/c/c-parser.c:2073 0x6d4dc2 c_parser_compound_statement_nostart ../../gcc/c/c-parser.c:4831 0x6d53ee c_parser_compound_statement ../../gcc/c/c-parser.c:4740 0x6d082c c_parser_declaration_or_fndef ../../gcc/c/c-parser.c:2112 0x6d87fb c_parser_external_declaration ../../gcc/c/c-parser.c:1468 0x6d9259 c_parser_translation_unit ../../gcc/c/c-parser.c:1348 0x6d9259 c_parse_file() ../../gcc/c/c-parser.c:18173