1 // RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
5 decltype(this) q
; // expected-error {{invalid use of 'this' outside of a non-static member function}}
7 int arr
[sizeof(this)]; // expected-error {{invalid use of 'this' outside of a non-static member function}}
8 int sz
= sizeof(this); // ok
10 typedef auto f() -> decltype(this); // expected-error {{invalid use of 'this' outside of a non-static member function}}
13 namespace CaptureThis
{
16 int m
= [&]{return n
+ 1; }();
17 int o
= [&]{return this->m
+ 1; }();
18 int p
= [&]{return [&](int x
) { return this->m
+ x
;}(o
); }();