3 // Copyright (C) 2003 Free Software Foundation, Inc.
4 // Contributed by Nathan Sidwell 12 Dec 2003 <nathan@codesourcery.com>
5 // Origin: grigory@stl.sarov.ru
7 // PR c++/13118. Missing covariant thunk.
10 struct c1 : virtual c0 {
18 struct c10 : virtual c1 {
22 struct c1a : c1 {}; // disambiguation
24 struct c11 : virtual c10, c1a {
26 virtual c1* f6 () = 0;
29 struct c18 : c5, virtual c1 {
33 struct c28 : virtual c0, virtual c11 {
49 bool check_c1 (c1 *ptr)
54 bool check_c10 (c10 *ptr)
59 bool check_c11 (c11 *ptr)
64 bool check_c28 (c28 *ptr)
74 if (check_c1 (static_cast<c1a *> (&obj)))
76 if (check_c1 (static_cast<c10 *> (&obj)))