1 // No PCH:
2 // RUN: %clang_cc1 -pedantic -std=c++1y -include %s -verify %s
3 //
4 // With PCH:
5 // RUN: %clang_cc1 -pedantic -std=c++1y -emit-pch %s -o %t
6 // RUN: %clang_cc1 -pedantic -std=c++1y -include-pch %t -verify %s
7 
8 #ifndef HEADER
9 #define HEADER
10 
11 auto counter = [a(0)] () mutable { return a++; };
12 int x = counter();
13 
14 template<typename T> void f(T t) {
15   [t(t)] { int n = t; } ();
16 }
17 
18 #else
19 
20 int y = counter();
21 
22 void g() {
23   f(0); // ok
24   // expected-error@15 {{lvalue of type 'const char *const'}}
25   f("foo"); // expected-note {{here}}
26 }
27 
28 #endif
29