summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.other/conv8.C
blob: 205ad43828060821532078ca3b379e97d3f9b2a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// { dg-do assemble  }
// Origin: Jakub Jelinek <jakub@redhat.com>

class bar
{
public:
    bar();
    virtual ~bar();
    static void a();
};

class baz : public bar
{
};

class foo : virtual public baz
{
public:
    static void a();
    void b();
};

typedef void (bar::*T)();
T d;

void foo::a()
{
    typedef void(foo::*t)();
    t c = & foo::b;
    d = (T) c;			// { dg-error "pointer to member" }
}