diff options
Diffstat (limited to 'test/SemaCXX/access.cpp')
-rw-r--r-- | test/SemaCXX/access.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/SemaCXX/access.cpp b/test/SemaCXX/access.cpp index 5ccd418c1b76..5fa1509c5302 100644 --- a/test/SemaCXX/access.cpp +++ b/test/SemaCXX/access.cpp @@ -136,3 +136,25 @@ namespace PR7434 { }; } } + +namespace LocalExternVar { + class test { + private: + struct private_struct { // expected-note 2{{here}} + int x; + }; + int use_private(); + }; + + int test::use_private() { + extern int array[sizeof(test::private_struct)]; // ok + return array[0]; + } + + int f() { + extern int array[sizeof(test::private_struct)]; // expected-error {{private}} + return array[0]; + } + + int array[sizeof(test::private_struct)]; // expected-error {{private}} +} |