// RUN: %clang_cc1 -std=c++2a -verify %s | |
// expected-no-diagnostics | |
// This test does two things. | |
// Deleting the copy constructor ensures that an [=, this] capture doesn't copy the object. | |
// Accessing a member variable from the lambda ensures that the capture actually works. | |
class A { | |
A(const A &) = delete; | |
int i; | |
void func() { | |
auto L = [=, this]() -> int { return i; }; | |
L(); | |
} | |
}; |