https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98964
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Host|hppa-unknown-linux-gnu | Component|testsuite |c++ Ever confirmed|0 |1 Target|hppa-unknown-linux-gnu | Build|hppa-unknown-linux-gnu | Status|UNCONFIRMED |NEW Last reconfirmed| |2021-04-20 --- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> --- On Linux/x86-64, r11-8260 gave ./releases/gcc-11/r11-8260/bld/gcc/xgcc -B./releases/gcc-11/r11-8260/bld/gcc/ -S constexpr-52830.C constexpr-52830.C:27:1: error: no declaration matches ??void foo::func(T&&, typename eif<same<decltype (a), int&&>::value>::type*)?? 27 | foo:: | ^~~ constexpr-52830.C:21:8: note: candidate is: ??template<class T> void foo::func(T&&, typename eif<same<decltype (a), int&&>::value>::type*)?? 21 | void func(T && a, | ^~~~ constexpr-52830.C:19:8: note: ??struct foo?? defined here 19 | struct foo { | ^~~ gnu-skx-1:pts/4[56]> ./releases/gcc-11/r11-8254/bld/gcc/xgcc -B./releases/gcc-11/r11-8254/bld/gcc/ -S constexpr-52830.C constexpr-52830.C:29:60: internal compiler error: canonical types differ for identical types ??eif<same<decltype (a), int&&>::value>?? and ??eif<same<decltype (a), int&&>::value>?? 29 | typename eif<same<decltype(a), int&&>::value>::type * ) | ^ 0xe0117d comptypes(tree_node*, tree_node*, int) ../../../gcc/gcc/cp/typeck.c:1558 0xe01353 same_type_ignoring_top_level_qualifiers_p(tree_node*, tree_node*) ../../../gcc/gcc/cp/typeck.c:1594 0xe005e0 structural_comptypes ../../../gcc/gcc/cp/typeck.c:1443 0xe010c4 comptypes(tree_node*, tree_node*, int) ../../../gcc/gcc/cp/typeck.c:1547 0xe0027e structural_comptypes ../../../gcc/gcc/cp/typeck.c:1401 0xe010c4 comptypes(tree_node*, tree_node*, int) ../../../gcc/gcc/cp/typeck.c:1547 0xe015d8 compparms(tree_node const*, tree_node const*) ../../../gcc/gcc/cp/typeck.c:1699 0xb72130 check_classfn(tree_node*, tree_node*, tree_node*) ../../../gcc/gcc/cp/decl2.c:686 0xb47ae5 grokfndecl ../../../gcc/gcc/cp/decl.c:10109 0xb5445c grokdeclarator(cp_declarator const*, cp_decl_specifier_seq*, decl_context, int, tree_node**) ../../../gcc/gcc/cp/decl.c:13924 0xb6274b start_function(cp_decl_specifier_seq*, cp_declarator const*, tree_node*) ../../../gcc/gcc/cp/decl.c:16859 0xcbe4d3 cp_parser_function_definition_from_specifiers_and_declarator ../../../gcc/gcc/cp/parser.c:29940 0xcad696 cp_parser_init_declarator ../../../gcc/gcc/cp/parser.c:21653 0xcbfdf6 cp_parser_single_declaration ../../../gcc/gcc/cp/parser.c:30564 0xcbea7b cp_parser_template_declaration_after_parameters ../../../gcc/gcc/cp/parser.c:30136 0xcbf9ef cp_parser_explicit_template_declaration ../../../gcc/gcc/cp/parser.c:30402 0xcbfa49 cp_parser_template_declaration_after_export ../../../gcc/gcc/cp/parser.c:30421 0xca3912 cp_parser_template_declaration ../../../gcc/gcc/cp/parser.c:16609 0xc9f1e0 cp_parser_declaration ../../../gcc/gcc/cp/parser.c:14085 0xc9f5f3 cp_parser_toplevel_declaration ../../../gcc/gcc/cp/parser.c:14183 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.