1 // This is the ASAN test of the same name ported to HWAsan.
3 // RUN: %clangxx_hwasan -std=c++11 -O1 %s -o %t && \
4 // RUN: not %run %t 2>&1 | FileCheck %s
6 // REQUIRES: aarch64-target-arch || riscv64-target-arch
9 __attribute__((noinline
)) const IntHolder
&Self() const {
15 const IntHolder
*saved
;
17 int main(int argc
, char *argv
[]) {
18 saved
= &IntHolder().Self();
19 int x
= saved
->val
; // BOOM
20 // CHECK: ERROR: HWAddressSanitizer: tag-mismatch
21 // CHECK: #0 0x{{.*}} in main {{.*}}use-after-scope-temp2.cpp:[[@LINE-2]]
22 // CHECK: Cause: stack tag-mismatch