[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / SemaCXX / auto-cxx0x.cpp
blob07687b6066790f7b21f025e579bfaa7712263e0b
1 // RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++11
2 // RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++1y
3 void f() {
4 auto int a; // expected-warning {{'auto' storage class specifier is not permitted in C++11, and will not be supported in future releases}}
5 int auto b; // expected-error{{cannot combine with previous 'int' declaration specifier}}
8 typedef auto PR25449(); // expected-error {{'auto' not allowed in typedef}}
10 thread_local auto x; // expected-error {{requires an initializer}}
12 void g() {
13 [](auto){}(0);
14 #if __cplusplus == 201103L
15 // expected-error@-2 {{'auto' not allowed in lambda parameter before C++14}}
16 #endif
19 void rdar47689465() {
20 int x = 0;
21 [](auto __attribute__((noderef)) *){}(&x);
22 #if __cplusplus == 201103L
23 // expected-error@-2 {{'auto' not allowed in lambda parameter before C++14}}
24 #endif