summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/ptr-to-datamember.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2009-10-26 21:58:25 +0000
committerFariborz Jahanian <fjahanian@apple.com>2009-10-26 21:58:25 +0000
commit038374f887757e93c2def75efbd3b705fe798b2a (patch)
treecf08aa91f9552dfa15e1546d846ff61ae5daeeb3 /clang/test/CodeGenCXX/ptr-to-datamember.cpp
parent3b7ba5f35b00ded87eff26542ccbcd2fcfe8d7eb (diff)
downloadbcm5719-llvm-038374f887757e93c2def75efbd3b705fe798b2a.tar.gz
bcm5719-llvm-038374f887757e93c2def75efbd3b705fe798b2a.zip
Add Code gen support for '->*' operator which fell
through the crack. llvm-svn: 85160
Diffstat (limited to 'clang/test/CodeGenCXX/ptr-to-datamember.cpp')
-rw-r--r--clang/test/CodeGenCXX/ptr-to-datamember.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/ptr-to-datamember.cpp b/clang/test/CodeGenCXX/ptr-to-datamember.cpp
index eee03c060f9..a7b4cc2f7af 100644
--- a/clang/test/CodeGenCXX/ptr-to-datamember.cpp
+++ b/clang/test/CodeGenCXX/ptr-to-datamember.cpp
@@ -51,6 +51,21 @@ void test_aggr_pdata(A& a1) {
pr(a1.*af);
}
+void test_aggr_pdata_1(A* pa) {
+ F A::* af = &A::Af;
+ pr(pa->*af);
+
+ (pa->*af).iF = 100;
+ (pa->*af).fF = 200.00;
+ printf(" %d %f\n", (pa->*af).iF, (pa->*af).fF);
+ pr(pa->*af);
+
+ (pa->*af).iF++;
+ (pa->*af).fF--;
+ --(pa->*af).fF;
+ pr(pa->*af);
+}
+
int main()
{
A a1;
@@ -67,4 +82,5 @@ int main()
printf("%d\n", &A::B1::V::iV);
printf("%d, %f, %f \n", a1.*pa, a1.*pf, a1.*pd);
test_aggr_pdata(a1);
+ test_aggr_pdata_1(&a1);
}
OpenPOWER on IntegriCloud