forked from OSchip/llvm-project
[asan] Add test which detects bugs undetectable before r288563
Reviewers: kcc, eugenis Subscribers: llvm-commits, kubabrecka Differential Revision: https://reviews.llvm.org/D27583 llvm-svn: 289090
This commit is contained in:
parent
7fed58cd9f
commit
6eead19ce4
|
@ -0,0 +1,20 @@
|
||||||
|
// RUN: %clangxx_asan %stdcxx11 -O1 -fsanitize-address-use-after-scope %s -o %t && \
|
||||||
|
// RUN: not %run %t 2>&1 | FileCheck %s
|
||||||
|
|
||||||
|
|
||||||
|
struct IntHolder {
|
||||||
|
const IntHolder& Self() const {
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
int val = 3;
|
||||||
|
};
|
||||||
|
|
||||||
|
const IntHolder *saved;
|
||||||
|
|
||||||
|
int main(int argc, char *argv[]) {
|
||||||
|
saved = &IntHolder().Self();
|
||||||
|
int x = saved->val; // BOOM
|
||||||
|
// CHECK: ERROR: AddressSanitizer: stack-use-after-scope
|
||||||
|
// CHECK: #0 0x{{.*}} in main {{.*}}use-after-scope-temp2.cc:[[@LINE-2]]
|
||||||
|
return x;
|
||||||
|
}
|
Loading…
Reference in New Issue