[Bug c++/61636] generic lambda: segfault / "cannot call member function without object"

nathan at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jan 17 18:23:00 GMT 2017


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

--- Comment #24 from Nathan Sidwell <nathan at gcc dot gnu.org> ---
Author: nathan
Date: Tue Jan 17 18:22:34 2017
New Revision: 244544

URL: https://gcc.gnu.org/viewcvs?rev=244544&root=gcc&view=rev
Log:
        PR c++/61636
        * cp-tree.h (maybe_generic_this_capture): Declare.
        * lambda.c (resolvable_dummy_lambda): New, broken out of ...
        (maybe_resolve_dummy): ... here.  Call it.
        (maybe_generic_this_capture): New.
        * parser.c (cp_parser_postfix_expression): Speculatively capture
        this in generic lambda in unresolved member function call.
        * pt.c (tsubst_copy_and_build): Force hard error from failed
        member function lookup in generic lambda.

        PR c++/61636
        * g++.dg/cpp1y/pr61636-1.C: New.
        * g++.dg/cpp1y/pr61636-2.C: New.
        * g++.dg/cpp1y/pr61636-3.C: New.

Added:
    trunk/gcc/testsuite/g++.dg/cpp1y/pr61636-1.C
    trunk/gcc/testsuite/g++.dg/cpp1y/pr61636-2.C
    trunk/gcc/testsuite/g++.dg/cpp1y/pr61636-3.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/cp-tree.h
    trunk/gcc/cp/lambda.c
    trunk/gcc/cp/parser.c
    trunk/gcc/cp/pt.c
    trunk/gcc/testsuite/ChangeLog


More information about the Gcc-bugs mailing list