summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/eh/spec3.C
blob: 20bcfc33ee84e004eb56ff2b13241809a121e387 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 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() throw (B,A)
{
  throw A();
}

int main(void)
{
  try {	func(); }
  catch (A& a) { }
}