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

            Bug ID: 85229
           Summary: .[concepts] ICE with local class in lambda
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: reichelt at gcc dot gnu.org
            Blocks: 67491
  Target Milestone: ---

The following invalid code snippet (compiled with "-fconcepts")
triggers an ICE since GCC 6.1.0 (when concepts were introduced):

=========================================
template<typename> concept bool C = []
{
  struct A
  {
    C{T} void foo();
  };
};
=========================================

bug.cc: In lambda function:
bug.cc:5:20: internal compiler error: in check_member_template, at
cp/decl2.c:573
     C{T} void foo();
                    ^
0x8b06cb check_member_template(tree_node*)
        ../../gcc/gcc/cp/decl2.c:573
0x94e5c4 finish_member_template_decl(tree_node*)
        ../../gcc/gcc/cp/pt.c:307
0x943832 cp_parser_template_declaration_after_parameters
        ../../gcc/gcc/cp/parser.c:26911
0x9440a6 cp_parser_template_introduction
        ../../gcc/gcc/cp/parser.c:27056
0x9440a6 cp_parser_template_declaration_after_export
        ../../gcc/gcc/cp/parser.c:27157
0x92e583 cp_parser_member_declaration
        ../../gcc/gcc/cp/parser.c:23467
0x92f7fa cp_parser_member_specification_opt
        ../../gcc/gcc/cp/parser.c:23389
0x92f7fa cp_parser_class_specifier_1
        ../../gcc/gcc/cp/parser.c:22521
0x9318f9 cp_parser_class_specifier
        ../../gcc/gcc/cp/parser.c:22783
0x9318f9 cp_parser_type_specifier
        ../../gcc/gcc/cp/parser.c:16766
0x93ec56 cp_parser_decl_specifier_seq
        ../../gcc/gcc/cp/parser.c:13617
0x944370 cp_parser_simple_declaration
        ../../gcc/gcc/cp/parser.c:12927
0x945318 cp_parser_block_declaration
        ../../gcc/gcc/cp/parser.c:12874
0x945d49 cp_parser_declaration_statement
        ../../gcc/gcc/cp/parser.c:12468
0x9241c3 cp_parser_statement
        ../../gcc/gcc/cp/parser.c:10917
0x925130 cp_parser_statement_seq_opt
        ../../gcc/gcc/cp/parser.c:11266
0x925c07 cp_parser_lambda_body
        ../../gcc/gcc/cp/parser.c:10677
0x925c07 cp_parser_lambda_expression
        ../../gcc/gcc/cp/parser.c:10178
0x925c07 cp_parser_primary_expression
        ../../gcc/gcc/cp/parser.c:5263
0x93894c cp_parser_postfix_expression
        ../../gcc/gcc/cp/parser.c:7022
Please submit a full bug report, [etc.]


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67491
[Bug 67491] [meta-bug] concepts issues

Reply via email to