xref: /llvm-project/clang/test/CodeGenCXX/sanitize-no-dtor-callback.cpp (revision 9c29bdf84ab1bdd89fe8c36974c3bf0543eb9763)
1 // Test with the flag -fno-sanitize-memory-use-after-dtor, to ensure that
2 // instrumentation is not erroneously inserted
3 // RUN: %clang_cc1 -fsanitize=memory -fno-sanitize-memory-use-after-dtor -triple=x86_64-pc-linux -emit-llvm -o - %s | FileCheck %s --implicit-check-not="call void @__sanitizer_"
4 
5 struct Simple {
6   int x;
~SimpleSimple7   ~Simple() {}
8 };
9 Simple s;
10 // CHECK-LABEL: define {{.*}}SimpleD1Ev
11 
12 struct Inlined {
13   int x;
~InlinedInlined14   inline ~Inlined() {}
15 };
16 Inlined i;
17 // CHECK-LABEL: define {{.*}}InlinedD1Ev
18 
19 // CHECK-LABEL: define {{.*}}SimpleD2Ev
20 
21 // CHECK-LABEL: define {{.*}}InlinedD2Ev
22