// RUN: %clangxx_asan -O0 %s -o %t // RUN: not %run %t 2>&1 | FileCheck %s struct A { int a[8]; }; int bar(A *a) { int *volatile ptr = &a->a[0]; return *(ptr - 1); } void foo(A a) { bar(&a); } int main() { foo(A()); } // CHECK: ERROR: AddressSanitizer: stack-buffer-underflow // CHECK: READ of size 4 at // CHECK: is located in stack of thread