summaryrefslogtreecommitdiff
path: root/clang/test/CodeGenCXX/type-cache-3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGenCXX/type-cache-3.cpp')
-rw-r--r--clang/test/CodeGenCXX/type-cache-3.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/type-cache-3.cpp b/clang/test/CodeGenCXX/type-cache-3.cpp
new file mode 100644
index 000000000000..2cbb63b143de
--- /dev/null
+++ b/clang/test/CodeGenCXX/type-cache-3.cpp
@@ -0,0 +1,16 @@
+// RUN: %clang_cc1 -mllvm -verify-type-cache -emit-llvm %s -o - -triple i386-pc-windows-msvc19.16.0 | FileCheck %s
+// REQUIRES: asserts, x86-registered-target
+
+// CHECK-LABEL: define {{.*}}@"?f@@YAXXZ"(
+// CHECK: call void @"?dc@z@@SAXU1@@Z"
+
+// CHECK-LABEL: define {{.*}}@"?dc@z@@SAXU1@@Z"(
+// CHECK: store void ({}*)* %{{.*}}, void ({}*)** %{{.*}}
+struct z {
+ static void dc(z) {}
+ void (*p)(z);
+};
+
+void f() {
+ z::dc({});
+}