| 1 | // RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck -check-prefix=WITHOUT %s |
| 2 | // RUN: %clang_cc1 -emit-llvm -o - %s -fsanitize=address | FileCheck -check-prefix=ASAN %s |
| 3 | |
| 4 | @interface MyClass |
| 5 | + (int) addressSafety:(int*)a; |
| 6 | @end |
| 7 | |
| 8 | @implementation MyClass |
| 9 | |
| 10 | // WITHOUT: +[MyClass load]{{.*}}#0 |
| 11 | // ASAN: +[MyClass load]{{.*}}#0 |
| 12 | +(void) load { } |
| 13 | |
| 14 | // WITHOUT: +[MyClass addressSafety:]{{.*}}#0 |
| 15 | // ASAN: +[MyClass addressSafety:]{{.*}}#0 |
| 16 | + (int) addressSafety:(int*)a { return *a; } |
| 17 | |
| 18 | @end |
| 19 | |
| 20 | // ASAN: attributes #0 = {{.*}}sanitize_address |
| 21 | // WITHOUT-NOT: attributes #0 = {{.*}}sanitize_address |
| 22 | |