blob: 440f3a2705c36b878eea44da522271b928298ee4 [file] [log] [blame]
// { dg-do assemble }
//
// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 24 April 2001 <nathan@codesourcery.com>
// Bug 2608. A default parameter introduced in the definition of a
// ctor never made it into the clones, leading to later overload
// resolution failures. This is related to bug 2356.
struct A
{
A (int, int);
};
A::A (int d, int = 0)
{
if (d)
{
A a (0);
}
}
void get_width ()
{
A a (1);
}
struct B : A
{
B ();
};
B::B ()
:A (1)
{
}
struct C : virtual A
{
C (int, int);
};
C::C (int, int = 0)
:A (1)
{
}
struct D: C
{
D ();
};
D::D ()
:A (0), C (0)
{
}