PR c++/84160 - ICE with nested variadic capture.
commitba23f9fbeceb4659b7ee587557a9502fca2943df
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Feb 2018 02:07:09 +0000 (2 02:07 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 Feb 2018 02:07:09 +0000 (2 02:07 +0000)
tree1eeccbcc99f8325a3a6b6c4e7886433ffdff17e1
parentb7e3290be8554a06bf2cabbf3c8157ce282a5bbf
PR c++/84160 - ICE with nested variadic capture.

* lambda.c (is_capture_proxy_with_ref): New.
(insert_capture_proxy): Don't set DECL_CAPTURED_VARIABLE from a
COMPONENT_REF.
* expr.c (mark_use): Use is_capture_proxy_with_ref.
* constexpr.c (potential_constant_expression_1): Likewise.
* semantics.c (process_outer_var_ref): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@257325 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/constexpr.c
gcc/cp/cp-tree.h
gcc/cp/expr.c
gcc/cp/lambda.c
gcc/cp/semantics.c
gcc/testsuite/g++.dg/cpp0x/lambda/lambda-variadic6.C [new file with mode: 0644]