https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100517
Bug ID: 100517 Summary: [12 Regression] ICE in rvalue, at cp/tree.c:946 Product: gcc Version: 12.0 Status: UNCONFIRMED Keywords: ice-on-invalid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- g++-12.0.0-alpha20210509 snapshot (g:5e0236d3b0e0d7ad98bcee36128433fa755b5558) ICEs when compiling the following testcase, reduced from test/SemaCXX/vector-casts.cpp from the clang 11.1.0 test suite: typedef int __v2si __attribute__ ((__vector_size__ (8))); struct S { }; void f (S s) { (void) reinterpret_cast<__v2si> (s); } % g++-12.0.0 -c jtptvwic.cpp jtptvwic.cpp: In function 'void f(S)': jtptvwic.cpp:8:37: internal compiler error: in rvalue, at cp/tree.c:946 8 | (void) reinterpret_cast<__v2si> (s); | ^ 0x6dbbce rvalue(tree_node*) /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/tree.c:946 0xb3fec4 build_reinterpret_cast_1 /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/typeck.c:8114 0xb40913 build_reinterpret_cast(unsigned int, tree_node*, tree_node*, int) /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/typeck.c:8157 0xb40913 build_reinterpret_cast(unsigned int, tree_node*, tree_node*, int) /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/typeck.c:8136 0xa5ed8f cp_parser_postfix_expression /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:7204 0xa46910 cp_parser_cast_expression /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:9689 0xa46f62 cp_parser_binary_expression /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:9839 0xa478fd cp_parser_assignment_expression /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:10143 0xa48f02 cp_parser_expression /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:10313 0xa4c728 cp_parser_expression_statement /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:12048 0xa58123 cp_parser_statement /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:11844 0xa59dcd cp_parser_statement_seq_opt /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:12196 0xa59ea8 cp_parser_compound_statement /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:12145 0xa77924 cp_parser_function_body /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:24094 0xa77924 cp_parser_ctor_initializer_opt_and_function_body /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:24145 0xa7954a cp_parser_function_definition_after_declarator /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:30088 0xa7a989 cp_parser_function_definition_from_specifiers_and_declarator /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:30004 0xa7a989 cp_parser_init_declarator /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:21664 0xa55d57 cp_parser_simple_declaration /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:14464 0xa83af5 cp_parser_declaration /var/tmp/portage/sys-devel/gcc-12.0.0_alpha20210509/work/gcc-12-20210509/gcc/cp/parser.c:14161