1// Check that there is a warning when atos fails to symbolize an address
2// and that atos continues symbolicating correctly after.
3
4// RUN: %clangxx -O0 %s -o %t
5// RUN: not %run %t 2>&1 | FileCheck %s
6
7// This test tests for undefined behavior and is leading to various failures.
8// Going to disable to unblock CI and rethink a test for this. rdar://107846128
9// UNSUPPORTED: darwin
10
11void bar() {
12 void *invalid_addr = reinterpret_cast<void *>(0xDEADBEEF);
13 void (*func_ptr)() = reinterpret_cast<void (*)()>(invalid_addr);
14 func_ptr();
15}
16
17int main() {
18 bar();
19 return 0;
20 // CHECK: WARNING: atos failed to symbolize address{{.*}}
21 // CHECK: {{.*}}atos-symbolized-recover.cpp:[[@LINE-3]]{{.*}}
22}
23

source code of compiler-rt/test/sanitizer_common/TestCases/Darwin/atos-symbolized-recover.cpp