diff options
Diffstat (limited to 'lib/asan/lit_tests/TestCases/use-after-scope-inlined.cc')
-rw-r--r-- | lib/asan/lit_tests/TestCases/use-after-scope-inlined.cc | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/lib/asan/lit_tests/TestCases/use-after-scope-inlined.cc b/lib/asan/lit_tests/TestCases/use-after-scope-inlined.cc deleted file mode 100644 index 0bad048e3b8f7..0000000000000 --- a/lib/asan/lit_tests/TestCases/use-after-scope-inlined.cc +++ /dev/null @@ -1,27 +0,0 @@ -// Test with "-O2" only to make sure inlining (leading to use-after-scope) -// happens. "always_inline" is not enough, as Clang doesn't emit -// llvm.lifetime intrinsics at -O0. -// -// RUN: %clangxx_asan -O2 -fsanitize=use-after-scope %s -o %t && not %t 2>&1 | FileCheck %s - -int *arr; - -__attribute__((always_inline)) -void inlined(int arg) { - int x[5]; - for (int i = 0; i < arg; i++) x[i] = i; - arr = x; -} - -int main(int argc, char *argv[]) { - inlined(argc); - return arr[argc - 1]; // BOOM - // CHECK: ERROR: AddressSanitizer: stack-use-after-scope - // CHECK: READ of size 4 at 0x{{.*}} thread T0 - // CHECK: #0 0x{{.*}} in main - // CHECK: {{.*}}use-after-scope-inlined.cc:[[@LINE-4]] - // CHECK: Address 0x{{.*}} is located in stack of thread T0 at offset - // CHECK: [[OFFSET:[^ ]*]] in frame - // CHECK: main - // CHECK: {{\[}}[[OFFSET]], {{.*}}) 'x.i' -} |