diff options
-rw-r--r-- | test/Analysis/NoReturn.m | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/Analysis/NoReturn.m b/test/Analysis/NoReturn.m index 8207d3acfd..a58efdd029 100644 --- a/test/Analysis/NoReturn.m +++ b/test/Analysis/NoReturn.m @@ -112,4 +112,14 @@ void test_rdar11634353_positive() { *p = 0xDEADBEEF; // expected-warning {{null pointer}} } +// Test analyzer_noreturn on category methods. +@interface NSException (OBExtensions) ++ (void)raise:(NSString *)name reason:(NSString *)reason __attribute__((analyzer_noreturn)); +@end + +void PR11959(int *p) { + if (!p) + [NSException raise:@"Bad Pointer" reason:@"Who knows?"]; + *p = 0xDEADBEEF; // no-warning +} |