1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -verify %s 2*67e74705SXin Li class Base { 3*67e74705SXin Li virtual ~Base(); // expected-note {{implicitly declared private here}} 4*67e74705SXin Li }; 5*67e74705SXin Li struct Foo : public Base { // expected-error {{base class 'Base' has private destructor}} 6*67e74705SXin Li const int kBlah = 3; // expected-warning {{is a C++11 extension}} 7*67e74705SXin Li Foo(); 8*67e74705SXin Li }; 9*67e74705SXin Li struct Bar : public Foo { BarBar10*67e74705SXin Li Bar() { } // expected-note {{implicit destructor for 'Foo' first required here}} 11*67e74705SXin Li }; 12*67e74705SXin Li struct Baz { 13*67e74705SXin Li Foo f; BazBaz14*67e74705SXin Li Baz() { } 15*67e74705SXin Li }; 16