[asan] Test that asan does not report use-after-scope if program jumped over variable declaration.

Summary:
Test to check if PR28267 workaround works.

PR28267
PR27453

Reviewers: eugenis

Subscribers: llvm-commits, kubabrecka

Differential Revision: https://reviews.llvm.org/D24323

llvm-svn: 280908
This commit is contained in:
Vitaly Buka 2016-09-08 06:43:02 +00:00
parent 58a81c6540
commit b638c48819
1 changed files with 21 additions and 0 deletions

View File

@ -0,0 +1,21 @@
// RUN: %clang_asan -O0 -fsanitize-address-use-after-scope %s -o %t && %run %t
// Function jumps over variable initialization making lifetime analysis
// ambiguous. Asan should ignore such variable and program must not fail.
int *ptr;
void f(int cond) {
if (cond)
goto label;
int tmp = 1;
label:
ptr = &tmp;
*ptr = 5;
}
int main() {
f(1);
return 0;
}