summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/member-pointer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/member-pointer.cpp')
-rw-r--r--clang/test/SemaCXX/member-pointer.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/member-pointer.cpp b/clang/test/SemaCXX/member-pointer.cpp
index 31973c12570..450fdba367f 100644
--- a/clang/test/SemaCXX/member-pointer.cpp
+++ b/clang/test/SemaCXX/member-pointer.cpp
@@ -40,3 +40,23 @@ void f() {
// Conversion to member of base.
pdi1 = pdid; // expected-error {{incompatible type assigning 'int struct D::*', expected 'int struct A::*'}}
}
+
+struct HasMembers
+{
+ int i;
+ void f();
+};
+
+namespace Fake
+{
+ int i;
+ void f();
+}
+
+void g() {
+ int HasMembers::*pmi = &HasMembers::i;
+ int *pni = &Fake::i;
+
+ // FIXME: Test the member function, too.
+ void (*pnf)() = &Fake::f;
+}
OpenPOWER on IntegriCloud