summaryrefslogtreecommitdiff
path: root/clang/test/SemaObjC/bad-receiver-1.m
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaObjC/bad-receiver-1.m')
-rw-r--r--clang/test/SemaObjC/bad-receiver-1.m21
1 files changed, 21 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/bad-receiver-1.m b/clang/test/SemaObjC/bad-receiver-1.m
new file mode 100644
index 0000000..fe3eecf
--- /dev/null
+++ b/clang/test/SemaObjC/bad-receiver-1.m
@@ -0,0 +1,21 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+
+@interface I
+- (id) retain;
+@end
+
+int objc_lookUpClass(const char*);
+
+void __raiseExc1() {
+ [objc_lookUpClass("NSString") retain]; // expected-warning {{receiver type 'int' is not 'id'}} \
+ expected-warning {{method '-retain' not found}}
+}
+
+typedef const struct __CFString * CFStringRef;
+
+void func() {
+ CFStringRef obj;
+
+ [obj self]; // expected-warning {{receiver type 'CFStringRef' (aka 'const struct __CFString *') is not 'id'}} \\
+ expected-warning {{method '-self' not found}}
+}