summaryrefslogtreecommitdiff
path: root/test/CodeGenCXX/virtual-function-attrs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGenCXX/virtual-function-attrs.cpp')
-rw-r--r--test/CodeGenCXX/virtual-function-attrs.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/CodeGenCXX/virtual-function-attrs.cpp b/test/CodeGenCXX/virtual-function-attrs.cpp
new file mode 100644
index 000000000000..3a9a1a28ddf4
--- /dev/null
+++ b/test/CodeGenCXX/virtual-function-attrs.cpp
@@ -0,0 +1,14 @@
+// RUN: %clang_cc1 %s -triple %itanium_abi_triple -std=c++11 -emit-llvm -o - | FileCheck %s
+
+class A {
+ virtual void f();
+ virtual void g();
+ virtual ~A();
+};
+
+void A::f() {}
+
+// CHECK: define [[CC:(x86_thiscallcc )?]]void @_ZN1A1fEv({{.*}}) unnamed_addr
+// CHECK: declare [[CC]]void @_ZN1A1gEv({{.*}}) unnamed_addr
+// CHECK: declare {{.*}} @_ZN1AD1Ev({{.*}}) unnamed_addr
+// CHECK: declare [[CC]]void @_ZN1AD0Ev({{.*}}) unnamed_addr