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