https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94896
Bug ID: 94896 Summary: [10 regression] ICE: canonical types differ for identical types Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: ro at gcc dot gnu.org Target Milestone: --- Target: sparc-sun-solaris2.11 Between 20200429 (27594524d8a93cddb197ad8c9d4075c5870f1473) and 20200430 (c416c52bcdb120db5e8c53a51bd78c4360daf79b), two tests regressed on Solaris/SPARC: +FAIL: g++.dg/cpp0x/alignas3.C -std=c++14 (internal compiler error) +FAIL: g++.dg/cpp0x/alignas3.C -std=c++14 (test for excess errors) +FAIL: g++.dg/cpp0x/alignas3.C -std=c++17 (internal compiler error) +FAIL: g++.dg/cpp0x/alignas3.C -std=c++17 (test for excess errors) +FAIL: g++.dg/cpp0x/alignas3.C -std=c++2a (internal compiler error) +FAIL: g++.dg/cpp0x/alignas3.C -std=c++2a (test for excess errors) 32 and 64-bit sparc Excess errors: /vol/gcc/src/hg/master/local/gcc/testsuite/g++.dg/cpp0x/alignas3.C:19:55: internal compiler error: canonical types differ for identical types 'Stmt' and 'Stmt' 0x82e6b3 comptypes(tree_node*, tree_node*, int) /vol/gcc/src/hg/master/local/gcc/cp/typeck.c:1519 0x80d243 maybe_dummy_object(tree_node*, tree_node**) /vol/gcc/src/hg/master/local/gcc/cp/tree.c:4040 0x7ef0d7 finish_non_static_data_member(tree_node*, tree_node*, tree_node*) /vol/gcc/src/hg/master/local/gcc/cp/semantics.c:1911 0x7f0673 finish_id_expression_1 /vol/gcc/src/hg/master/local/gcc/cp/semantics.c:3940 0x7f0a33 finish_id_expression(tree_node*, tree_node*, tree_node*, cp_id_kind*, bool, bool, bool*, bool, bool, bool, bool, char const**, unsigned int) /vol/gcc/src/hg/master/local/gcc/cp/semantics.c:4025 0x6fe247 cp_parser_primary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:5757 0x70ca77 cp_parser_postfix_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:7260 0x71925f cp_parser_unary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:8563 0x6e656b cp_parser_cast_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9454 0x6e734b cp_parser_binary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9557 0x6e97f3 cp_parser_assignment_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9862 0x6ed1f3 cp_parser_parenthesized_expression_list /vol/gcc/src/hg/master/local/gcc/cp/parser.c:7984 0x70d08b cp_parser_postfix_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:7333 0x71925f cp_parser_unary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:8563 0x6e656b cp_parser_cast_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9454 0x6e734b cp_parser_binary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9557 0x6e97f3 cp_parser_assignment_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9862 0x6e9c47 cp_parser_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:10030 0x6edc33 cp_parser_expression_statement /vol/gcc/src/hg/master/local/gcc/cp/parser.c:11691 0x6fb673 cp_parser_statement /vol/gcc/src/hg/master/local/gcc/cp/parser.c:11487 +FAIL: g++.dg/template/canon-type-8.C -std=gnu++14 (internal compiler error) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++14 (test for excess errors) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++17 (internal compiler error) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++17 (test for excess errors) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++2a (internal compiler error) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++2a (test for excess errors) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++98 (internal compiler error) +FAIL: g++.dg/template/canon-type-8.C -std=gnu++98 (test for excess errors) 64-bit sparc Excess errors: /vol/gcc/src/hg/master/local/gcc/testsuite/g++.dg/template/canon-type-8.C:37:30: internal compiler error: canonical types differ for identical types 'const chunk_array_stereo_t' {aka 'const chunk_array_t<2>'} and 'const chunk_array_t<2>' 0x82e6b3 comptypes(tree_node*, tree_node*, int) /vol/gcc/src/hg/master/local/gcc/cp/typeck.c:1519 0x82d573 structural_comptypes /vol/gcc/src/hg/master/local/gcc/cp/typeck.c:1423 0x82e54b structural_comptypes /vol/gcc/src/hg/master/local/gcc/cp/typeck.c:1245 0x82e54b comptypes(tree_node*, tree_node*, int) /vol/gcc/src/hg/master/local/gcc/cp/typeck.c:1512 0x5346af standard_conversion /vol/gcc/src/hg/master/local/gcc/cp/call.c:1286 0x53926f implicit_conversion /vol/gcc/src/hg/master/local/gcc/cp/call.c:2013 0x53b163 add_function_candidate /vol/gcc/src/hg/master/local/gcc/cp/call.c:2408 0x53cc83 add_candidates /vol/gcc/src/hg/master/local/gcc/cp/call.c:5866 0x54a443 add_candidates /vol/gcc/src/hg/master/local/gcc/cp/call.c:5768 0x54a443 build_new_method_call_1 /vol/gcc/src/hg/master/local/gcc/cp/call.c:10220 0x54be7f build_new_method_call(tree_node*, tree_node*, vec<tree_node*, va_gc, vl_embed>**, tree_node*, int, tree_node**, int) /vol/gcc/src/hg/master/local/gcc/cp/call.c:10429 0x70d767 cp_parser_postfix_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:7439 0x71925f cp_parser_unary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:8563 0x6e656b cp_parser_cast_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9454 0x6e734b cp_parser_binary_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9557 0x6e97f3 cp_parser_assignment_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9862 0x6e7f47 cp_parser_constant_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:10156 0x6e9a17 cp_parser_initializer_clause /vol/gcc/src/hg/master/local/gcc/cp/parser.c:23219 0x6e9a17 cp_parser_assignment_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:9881 0x6e9c47 cp_parser_expression /vol/gcc/src/hg/master/local/gcc/cp/parser.c:10030