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

--- Comment #6 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
Author: aldyh
Date: Wed Sep 13 17:40:43 2017
New Revision: 252627

URL: https://gcc.gnu.org/viewcvs?rev=252627&root=gcc&view=rev
Log:
        PR c++/81236 - ICE with template-id in generic lambda

        * semantics.c (finish_id_expression): Remove special dependent case.
        Avoid some later pieces when dependent.
        (finish_qualified_id_expr): Do normal BASELINK handling in a
        template.  Always build a SCOPE_REF for a destructor BIT_NOT_EXPR.
        (parsing_default_capturing_generic_lambda_in_template): Remove.
        * parser.c (cp_parser_postfix_dot_deref_expression): Always give an
        error for types that will never be complete.
        * mangle.c (write_expression): Add sanity check.
        * tree.c (build_qualified_name): Add sanity check.
        (cp_walk_subtrees): Walk into the class context of a BASELINK.
        * lambda.c (add_capture): Improve diagnostic for generic lambda
        capture failure.
        * call.c (build_new_method_call_1): Print the right constructor
        name.

Added:
    branches/range-gen2/gcc/testsuite/g++.dg/cpp1y/lambda-generic-this1.C
    branches/range-gen2/gcc/testsuite/g++.dg/cpp1y/lambda-generic-this1a.C
Modified:
    branches/range-gen2/gcc/cp/ChangeLog
    branches/range-gen2/gcc/cp/call.c
    branches/range-gen2/gcc/cp/lambda.c
    branches/range-gen2/gcc/cp/mangle.c
    branches/range-gen2/gcc/cp/parser.c
    branches/range-gen2/gcc/cp/semantics.c
    branches/range-gen2/gcc/cp/tree.c
    branches/range-gen2/gcc/testsuite/g++.dg/template/pseudodtor3.C

Reply via email to