1 // { dg-do compile { target c++14 } }
2 
3 // DR 1658, inaccessible dtor of virtual base doesn't affect an
4 // abstract class.  But we should stil check access to non-virtual bases.
5 
6 class C;
7 
8 struct A {
9 private:
~AA10   ~A (){  }
11   friend class C;
12 };
13 
14 struct B : A { // { dg-error "is private" }
15   virtual bool Ok () = 0; // abstract
16 };
17 
18 struct C : B {
~CC19   ~C ()
20   { }  // { dg-error "use of deleted" }
21   virtual bool Ok ();
22 };
23