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