From: Aaron Ballman Date: Wed, 11 Sep 2013 13:43:47 +0000 (+0000) Subject: Adding some additional test cases for the cleanup attribute. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a19efafb13390d84e68c5cb80049913f41652582;p=clang Adding some additional test cases for the cleanup attribute. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190525 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/SemaCXX/attr-cleanup.cpp b/test/SemaCXX/attr-cleanup.cpp index 3ac8e817dc..b6c58533ac 100644 --- a/test/SemaCXX/attr-cleanup.cpp +++ b/test/SemaCXX/attr-cleanup.cpp @@ -4,7 +4,18 @@ namespace N { void c1(int *a) {} } +class C { + static void c2(int *a) {} // expected-note {{implicitly declared private here}} expected-note {{implicitly declared private here}} +}; + void t1() { int v1 __attribute__((cleanup(N::c1))); int v2 __attribute__((cleanup(N::c2))); // expected-error {{no member named 'c2' in namespace 'N'}} + int v3 __attribute__((cleanup(C::c2))); // expected-error {{'c2' is a private member of 'C'}} } + +class D : public C { + void t2() { + int v1 __attribute__((cleanup(c2))); // expected-error {{'c2' is a private member of 'C'}} + } +};