summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimur Iskhodzhanov <timurrrr@google.com>2012-06-27 01:38:25 +0000
committerTimur Iskhodzhanov <timurrrr@google.com>2012-06-27 01:38:25 +0000
commitdf438046c0e2ae38045c01a5becea64df2b1bf73 (patch)
tree7332fa038a8bf7f1f2814edd23a760a26e8d733f
parentc0b8324d6f68dfc2221257cdb83e39b974431c0b (diff)
downloadclang-df438046c0e2ae38045c01a5becea64df2b1bf73.tar.gz
clang-df438046c0e2ae38045c01a5becea64df2b1bf73.tar.bz2
clang-df438046c0e2ae38045c01a5becea64df2b1bf73.tar.xz
Add a few more test cases for the -cxx-abi microsoft mangler. Some of them were broken recently
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159248 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/CodeGenCXX/mangle-ms.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/test/CodeGenCXX/mangle-ms.cpp b/test/CodeGenCXX/mangle-ms.cpp
index 326a848fcb..58d48cbb60 100644
--- a/test/CodeGenCXX/mangle-ms.cpp
+++ b/test/CodeGenCXX/mangle-ms.cpp
@@ -42,6 +42,9 @@ public:
foo(char *q){}
//CHECK: @"\01??0foo@@QAE@PAD@Z"
+
+ static foo* static_method() { return 0; }
+
}f,s1(1),s2((char*)0);
typedef foo (foo2);
@@ -62,8 +65,17 @@ enum quux {
qthree
};
-int foo::operator+(int a) {return a;}
-// CHECK: @"\01??Hfoo@@QAEHH@Z"
+foo bar() { return foo(); }
+//CHECK: @"\01?bar@@YA?AVfoo@@XZ"
+
+int foo::operator+(int a) {
+//CHECK: @"\01??Hfoo@@QAEHH@Z"
+
+ foo::static_method();
+//CHECK: @"\01?static_method@foo@@SAPAV1@XZ"
+ bar();
+ return a;
+}
const short foo::d = 0;
volatile long foo::e;