summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/rtti/dyncast1.C
blob: ace1aef06000cc99ab4888c8da9fab8ac1e1de4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class JunkBase
{
public:
    virtual void DoSomething( void ) = 0;
protected:
    virtual ~JunkBase( void ) {}
    JunkBase( void ) {}
};

class Junk : protected JunkBase
{
public:
    Junk( void ) : JunkBase() {}
    virtual ~Junk( void ) {}
protected:
    inline JunkBase * AsBase( void )
    { return dynamic_cast< JunkBase * >( this ); }
    virtual void DoSomething( void ) { }
};