https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111106

            Bug ID: 111106
           Summary: missing ; causes internal compiler error: in
                    dependent_type_p, at cp/pt.cc:27901
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mpolacek at gcc dot gnu.org
  Target Milestone: ---

consteval int id (int i) { return i; }

constexpr int
f (auto i) requires requires { id (i) }
{
  return i;
}

void
g ()
{
  f (42);
}

$ ./cc1plus -quiet -std=c++23 ice.C
ice.C:4:38: error: expected ‘;’ before ‘}’ token
    4 | f (auto i) requires requires { id (i) }
      |                                      ^~
      |                                      ;
ice.C:4:1: error: constraints on a non-templated function
    4 | f (auto i) requires requires { id (i) }
      | ^
ice.C:4:39: internal compiler error: in dependent_type_p, at cp/pt.cc:27901
    4 | f (auto i) requires requires { id (i) }
      |                                       ^
0x10bfe18 dependent_type_p(tree_node*)
        /home/mpolacek/src/gcc/gcc/cp/pt.cc:27901
0xe71b20 require_complete_types_for_parms
        /home/mpolacek/src/gcc/gcc/cp/decl.cc:14908
0xe7c9eb check_function_type
        /home/mpolacek/src/gcc/gcc/cp/decl.cc:17236
0xe7dd74 start_preparsed_function(tree_node*, tree_node*, int)
        /home/mpolacek/src/gcc/gcc/cp/decl.cc:17435
0xe8098b start_function(cp_decl_specifier_seq*, cp_declarator const*,
tree_node*)
        /home/mpolacek/src/gcc/gcc/cp/decl.cc:17759
0xff3994 cp_parser_function_definition_from_specifiers_and_declarator
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:31935
0xfe06bc cp_parser_init_declarator
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:22827
0xfd2054 cp_parser_simple_declaration
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:15435
0xfd1bcd cp_parser_block_declaration
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:15255
0xfd1816 cp_parser_declaration
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:15121
0xfd18f6 cp_parser_toplevel_declaration
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:15142
0xfb98ac cp_parser_translation_unit
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:5140
0x102d32f c_parse_file()
        /home/mpolacek/src/gcc/gcc/cp/parser.cc:49810
0x122af79 c_common_parse_file()
        /home/mpolacek/src/gcc/gcc/c-family/c-opts.cc:1257

Reply via email to