summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/mangle-exprs.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-06-05 05:27:58 +0000
committerDouglas Gregor <dgregor@apple.com>2011-06-05 05:27:58 +0000
commitc507db4f701a1136d47f74547c76b72425e0598a (patch)
tree84de61cfb840bc34a394044b28d196016767a6cc /clang/test/CodeGenCXX/mangle-exprs.cpp
parent7f139d8103c432123ec62c7b74d04d4360c9c86b (diff)
downloadbcm5719-llvm-c507db4f701a1136d47f74547c76b72425e0598a.tar.gz
bcm5719-llvm-c507db4f701a1136d47f74547c76b72425e0598a.zip
Add name mangling for expr .* expr. Fixes PR9983 / <rdar://problem/9486332>.
llvm-svn: 132659
Diffstat (limited to 'clang/test/CodeGenCXX/mangle-exprs.cpp')
-rw-r--r--clang/test/CodeGenCXX/mangle-exprs.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/mangle-exprs.cpp b/clang/test/CodeGenCXX/mangle-exprs.cpp
index 46c46f04a8a..75294e059c5 100644
--- a/clang/test/CodeGenCXX/mangle-exprs.cpp
+++ b/clang/test/CodeGenCXX/mangle-exprs.cpp
@@ -109,3 +109,19 @@ namespace test2 {
// CHECK: store float {{.*}}, float* @_ZZN5test21gIPFfvEEEvT_DTclfL0p_EEE8variable,
}
+
+namespace test3 {
+ template <class T, class U> void a(T x, U y, decltype(x.*y) z) {}
+
+ struct X {
+ int *member;
+ };
+
+ // CHECK: define void @_ZN5test311instantiateEv
+ void instantiate() {
+ X x;
+ int *ip;
+ // CHECK: call void @_ZN5test31aINS_1XEMS1_PiEEvT_T0_DTdsfL0p_fL0p0_E
+ a(x, &X::member, ip);
+ }
+}
OpenPOWER on IntegriCloud