1 // { dg-do compile { target c++11_only } } 2 3 class C; 4 5 6 struct A { 7 A (); 8 private: ~AA9 ~A (){ } 10 friend class C; 11 }; 12 13 struct B : virtual A { // { dg-error "is private" } 14 B (); 15 virtual bool Ok () = 0; // abstract 16 }; 17 18 struct C : B { // { dg-error "use of deleted" } 19 C (); 20 virtual bool Ok (); 21 }; 22 23 C c; // { dg-error "use of deleted" } 24