// PR c++/4381 // Test that exception-specs work properly for classes with virtual bases. // { dg-do run } class Base {}; struct A : virtual public Base { A() {} }; struct B {}; void func() #if __cplusplus <= 201402L throw (B,A) // { dg-warning "deprecated" "" { target { c++11 && { ! c++17 } } } } #endif { throw A(); } int main(void) { try { func(); } catch (A& a) { } }