aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-11-21 00:49:41 +0000
committerTed Kremenek <kremenek@apple.com>2009-11-21 00:49:41 +0000
commit64fa85855638d69e56ed1b2fad7ed65deb3ecdfd (patch)
treee36a30cd73b3e01dfac5715112ae8e16bd2967f0 /test
parent75ee3bd6e7ed2b4286d5e717ae7b94411f90b3b9 (diff)
More checker refactoring. Passing undefined values in a message expression is now handled by UndefinedArgChecker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89519 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/Analysis/misc-ps.m20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/Analysis/misc-ps.m b/test/Analysis/misc-ps.m
index d2eef0d7fd..85095f4e07 100644
--- a/test/Analysis/misc-ps.m
+++ b/test/Analysis/misc-ps.m
@@ -750,3 +750,23 @@ void test_undefined_array_subscript() {
int *p = &a[i]; // expected-warning{{Array subscript is undefined}}
}
@end
+
+//===----------------------------------------------------------------------===//
+// Test passing an undefined value in a message or function call.
+//===----------------------------------------------------------------------===//
+
+void test_bad_call_aux(int x);
+void test_bad_call(void) {
+ int y;
+ test_bad_call_aux(y); // expected-warning{{Pass-by-value argument in function call is undefined}}
+}
+
+@interface TestBadArg {}
+- (void) testBadArg:(int) x;
+@end
+
+void test_bad_msg(TestBadArg *p) {
+ int y;
+ [p testBadArg:y]; // expected-warning{{Pass-by-value argument in message expression is undefined}}
+}
+