1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -verify %s 2*67e74705SXin Li // PR7694 3*67e74705SXin Li 4*67e74705SXin Li class A { }; 5*67e74705SXin Li class B : private A { public: void foo(); }; // expected-note {{declared private here}} foo()6*67e74705SXin Livoid B::foo() { 7*67e74705SXin Li (void)static_cast<void(A::*)()>(&B::foo); 8*67e74705SXin Li } bar()9*67e74705SXin Livoid bar() { 10*67e74705SXin Li (void)static_cast<void(A::*)()>(&B::foo); // expected-error {{cannot cast 'B' to its private base class 'A'}} 11*67e74705SXin Li } 12