blob: c24d5d8a09a20a5983dbea4578120bec1ccaac07 [file] [log] [blame]
Shih-wei Liaof8fd82b2010-02-10 11:10:31 -08001// RUN: %clang_cc1 -fsyntax-only -verify %s
2
3void f1() {
4 struct X {
5 struct Y;
6 };
7
8 struct X::Y {
9 void f() {}
10 };
11}
12
13void f2() {
14 struct X {
15 struct Y;
16
17 struct Y {
18 void f() {}
19 };
20 };
21}
22
23// A class nested within a local class is a local class.
24void f3(int a) { // expected-note{{'a' declared here}}
25 struct X {
26 struct Y {
27 int f() { return a; } // expected-error{{reference to local variable 'a' declared in enclosed function 'f3'}}
28 };
29 };
30}