xref: /llvm-project/clang/test/SemaCXX/access-member-pointer.cpp (revision d4c75cdddec4f9ba9201366b6a8f4f810e8f4a38)
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 // PR7694
3 
4 class A { };
5 class B : private A { public: void foo(); }; // expected-note {{declared private here}}
foo()6 void B::foo() {
7   (void)static_cast<void(A::*)()>(&B::foo);
8 }
bar()9 void bar() {
10   (void)static_cast<void(A::*)()>(&B::foo); // expected-error {{cannot cast 'B' to its private base class 'A'}}
11 }
12