Clang Project

clang_source_code/test/CodeGenCXX/cfi-mfcall-incomplete.cpp
1// RUN: %clang_cc1 -triple x86_64-unknown-linux -fsanitize=cfi-mfcall -fsanitize-trap=cfi-mfcall -fvisibility hidden -emit-llvm -o - %s | FileCheck %s
2
3struct S;
4
5void f(S *s, void (S::*p)()) {
6  // CHECK-NOT: llvm.type.test
7  // CHECK: llvm.type.test{{.*}}!"_ZTSM1SFvvE.virtual"
8  // CHECK-NOT: llvm.type.test
9  (s->*p)();
10}
11
12// CHECK: declare i1 @llvm.type.test
13