diff options
author | Jason Merrill <jason@redhat.com> | 2021-02-08 17:04:03 -0500 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2021-02-08 20:51:51 -0500 |
commit | bdbca69e0720fa9062fe71782235141f629ae006 (patch) | |
tree | b5725094dbdc7b69cac93772cd65a2cfae07ea83 /gcc/tree-ssa-sccvn.c | |
parent | a8dd2b3e96590ceccead63d28fc91c956a5f1a73 (diff) | |
download | gcc-bdbca69e0720fa9062fe71782235141f629ae006.zip gcc-bdbca69e0720fa9062fe71782235141f629ae006.tar.gz gcc-bdbca69e0720fa9062fe71782235141f629ae006.tar.bz2 |
c++: generic lambda, fn* conv, empty class [PR98326]
Here, in the thunk returned from the captureless lambda conversion to
pointer-to-function, we try to pass through invisible reference parameters
by reference, without doing a copy. The empty class copy optimization was
messing that up.
gcc/cp/ChangeLog:
PR c++/98326
PR c++/20408
* cp-gimplify.c (simple_empty_class_p): Don't touch an invisiref
parm.
gcc/testsuite/ChangeLog:
PR c++/98326
* g++.dg/cpp1y/lambda-generic-empty1.C: New test.
Diffstat (limited to 'gcc/tree-ssa-sccvn.c')
0 files changed, 0 insertions, 0 deletions