https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97947
Bug ID: 97947 Summary: [11 Regression] ICE in digest_init_r, at cp/typeck2.c:1145 Product: gcc Version: 11.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: powerpc-*-linux-gnu gcc-11.0.0-alpha20201122 snapshot (g:e23f47ec4065e9eec53c4ad9db91bc36a4f90793) ICEs when compiling the following testcase, reduced from gcc/testsuite/gcc.target/powerpc/mma-builtin-2.c: void x1 (__vector_pair *ur) { __vector_pair dd = *ur; } % powerpc-e300c3-linux-gnu-g++-11.0.0 -c lv5swte0.c lv5swte0.c: In function 'void x1(__vector_pair*)': lv5swte0.c:4:23: internal compiler error: in digest_init_r, at cp/typeck2.c:1145 4 | __vector_pair dd = *ur; | ^~ 0x69162f digest_init_r /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/typeck2.c:1145 0xae37ed store_init_value(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, int) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/typeck2.c:729 0x930ab0 check_initializer /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/decl.c:6923 0x956e52 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int) /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/decl.c:7841 0xa0b1e7 cp_parser_init_declarator /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:21380 0x9e7801 cp_parser_simple_declaration /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:13962 0xa053da cp_parser_declaration_statement /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:13362 0x9e97b4 cp_parser_statement /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:11586 0x9ea902 cp_parser_statement_seq_opt /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:11952 0x9ea9e0 cp_parser_compound_statement /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:11902 0xa0554f cp_parser_function_body /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:23569 0xa0554f cp_parser_ctor_initializer_opt_and_function_body /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:23620 0xa0a360 cp_parser_function_definition_after_declarator /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:29510 0xa0b7ed cp_parser_function_definition_from_specifiers_and_declarator /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:29426 0xa0b7ed cp_parser_init_declarator /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:21142 0x9e7801 cp_parser_simple_declaration /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:13962 0xa15e84 cp_parser_declaration /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:13659 0xa16730 cp_parser_translation_unit /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:4806 0xa16730 c_parse_file() /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/cp/parser.c:44613 0xb46fb9 c_common_parse_file() /var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20201122/work/gcc-11-20201122/gcc/c-family/c-opts.c:1198