summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2011-12-20 22:21:08 +0000
committerFariborz Jahanian <fjahanian@apple.com>2011-12-20 22:21:08 +0000
commit028b9e1d0a7d18be9763bb0285cf4a9b8c0b9e12 (patch)
tree412a476c85cfb3f2662361833d29579ba40a578f /clang/test
parentb95c102c2f00f69f53243f4fe310744d48307439 (diff)
downloadbcm5719-llvm-028b9e1d0a7d18be9763bb0285cf4a9b8c0b9e12.tar.gz
bcm5719-llvm-028b9e1d0a7d18be9763bb0285cf4a9b8c0b9e12.zip
objc/c++: Issue diagnostic when free-standing ivar is accessed
in class method instead of crash. // rdar://10593227 llvm-svn: 146998
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/SemaObjC/err-ivar-access-in-class-method.m26
1 files changed, 26 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/err-ivar-access-in-class-method.m b/clang/test/SemaObjC/err-ivar-access-in-class-method.m
new file mode 100644
index 00000000000..5efd6224a7a
--- /dev/null
+++ b/clang/test/SemaObjC/err-ivar-access-in-class-method.m
@@ -0,0 +1,26 @@
+// RUN: %clang_cc1 -x objective-c -fsyntax-only -verify %s
+// RUN: %clang_cc1 -x objective-c++ -fsyntax-only -verify %s
+// rdar://10593227
+
+@class UIWindow;
+
+@interface CNAppDelegate
+
+@property (strong, nonatomic) UIWindow *window;
+
+@end
+
+
+@interface CNAppDelegate ()
+@property (nonatomic,retain) id foo;
+@end
+
+@implementation CNAppDelegate
+@synthesize foo;
+@synthesize window = _window;
+
++(void)myClassMethod;
+{
+ foo = 0; // expected-error {{instance variable 'foo' accessed in class method}}
+}
+@end
OpenPOWER on IntegriCloud