blob: 73d8c20f1430944c8ebffce50dce0e4b933ccd39 [file] [log] [blame]
// PR 31074
// Bug: The reference cast wasn't finding the desired static_cast followed by
// const_cast interpretation.
struct Shape
{
Shape() {}
virtual ~Shape() {}
};
struct Loop
{
Loop() {}
virtual ~Loop() {}
virtual void func() {}
};
struct Rect :
public Shape,
public Loop
{
Rect() {}
virtual ~Rect() {}
};
int main ()
{
const Rect* rect = new Rect();
Loop &l = ((Loop&)(*rect));
return (&l != (const Loop *)rect);
}