1 /* { dg-do run } */
2 
3 #include "check.h"
4 
5 #ifndef ALIGNMENT
6 #define ALIGNMENT	64
7 #endif
8 
9 typedef int aligned __attribute__((aligned(ALIGNMENT)));
10 
11 int global;
12 
13 class Base {};
14 
15 struct A : virtual public Base
16 {
AA17   A() {}
18 };
19 
20 struct B {};
21 
22 static void
23 inline __attribute__((always_inline))
foo(void)24 foo (void) throw (B,A)
25 {
26   aligned i;
27 
28   if (check_int (&i,  __alignof__(i)) != i)
29     abort ();
30   throw A();
31 }
32 
33 int
main()34 main()
35 {
36   try {	foo (); }
37   catch (A& a) { }
38   return 0;
39 }
40