summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/attr-cleanup.cpp
diff options
context:
space:
mode:
authorAaron Ballman <aaron@aaronballman.com>2013-09-11 13:43:47 +0000
committerAaron Ballman <aaron@aaronballman.com>2013-09-11 13:43:47 +0000
commite4ba0bdf11e0c51e364c1823682bd6d814498c9b (patch)
treebe45844950416d0d65f0b5a6d1561baf26545208 /clang/test/SemaCXX/attr-cleanup.cpp
parent333e0cb0552d75806261fcd892f60979c5269af1 (diff)
downloadbcm5719-llvm-e4ba0bdf11e0c51e364c1823682bd6d814498c9b.tar.gz
bcm5719-llvm-e4ba0bdf11e0c51e364c1823682bd6d814498c9b.zip
Adding some additional test cases for the cleanup attribute.
llvm-svn: 190525
Diffstat (limited to 'clang/test/SemaCXX/attr-cleanup.cpp')
-rw-r--r--clang/test/SemaCXX/attr-cleanup.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/attr-cleanup.cpp b/clang/test/SemaCXX/attr-cleanup.cpp
index 3ac8e817dc9..b6c58533acf 100644
--- a/clang/test/SemaCXX/attr-cleanup.cpp
+++ b/clang/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'}}
+ }
+};
OpenPOWER on IntegriCloud