summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/mangle.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-07-12 05:06:05 +0000
committerDouglas Gregor <dgregor@apple.com>2011-07-12 05:06:05 +0000
commit1cf9dd21dcb923b9aea3fab1e0959a59775bfc36 (patch)
tree1c77886e3284587afdcde142d8830e01a7ede16f /clang/test/CodeGenCXX/mangle.cpp
parent3ce8668273c418a9f8c807e704d35f97e07a67a9 (diff)
downloadbcm5719-llvm-1cf9dd21dcb923b9aea3fab1e0959a59775bfc36.tar.gz
bcm5719-llvm-1cf9dd21dcb923b9aea3fab1e0959a59775bfc36.zip
Mangle dependent template names of unknown arity
llvm-svn: 134967
Diffstat (limited to 'clang/test/CodeGenCXX/mangle.cpp')
-rw-r--r--clang/test/CodeGenCXX/mangle.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/mangle.cpp b/clang/test/CodeGenCXX/mangle.cpp
index 56e70a2b151..0f4e5c5c382 100644
--- a/clang/test/CodeGenCXX/mangle.cpp
+++ b/clang/test/CodeGenCXX/mangle.cpp
@@ -826,3 +826,16 @@ namespace test34 {
// CHECK: define weak_odr void @_ZN6test342f3ILy4EEEvRAplT_Ly8E_i
template void f3<4>(int (&)[4 + sizeof(int*)]);
}
+
+namespace test35 {
+ // Dependent operator names of unknown arity.
+ struct A {
+ template<typename U> A operator+(U) const;
+ };
+
+ template<typename T>
+ void f1(decltype(sizeof(&T::template operator+<int>))) {}
+
+ // CHECK: define weak_odr void @_ZN6test352f1INS_1AEEEvDTszadsrT_plIiEE
+ template void f1<A>(__SIZE_TYPE__);
+}
OpenPOWER on IntegriCloud