xref: /llvm-project/clang/test/CXX/expr/expr.prim/expr.prim.lambda/p10.cpp (revision 8c50e7c5e380d93f784582579c3e3f1bc157bf12)
1 // RUN: %clang_cc1 -std=c++11 %s -verify
2 
3 int GlobalVar; // expected-note {{declared here}}
4 
5 namespace N {
6   int AmbiguousVar; // expected-note {{candidate}}
7 }
8 int AmbiguousVar; // expected-note {{candidate}}
9 using namespace N;
10 
11 class X0 {
12   int Member;
13 
14   static void Overload(int);
15   void Overload();
16   virtual X0& Overload(float);
17 
18   void explicit_capture() {
19     int variable; // expected-note {{declared here}}
20     (void)[&Overload] () {}; // expected-error {{does not name a variable}} expected-error {{not supported yet}}
21     (void)[&GlobalVar] () {}; // expected-error {{does not have automatic storage duration}} expected-error {{not supported yet}}
22     (void)[&AmbiguousVar] () {}; // expected-error {{reference to 'AmbiguousVar' is ambiguous}} expected-error {{not supported yet}}
23     (void)[&Variable] () {}; // expected-error {{use of undeclared identifier 'Variable'; did you mean 'variable'}} \
24     // expected-error{{lambda expressions are not supported yet}}
25   }
26 };
27