1 // RUN: %llvmgcc -S -O0 -g %s -o /dev/null
8 struct B
: public A
{};
9 struct C
: public B
{};
11 const char * f(int C::*){ return ""; }
12 int f(int B::*) { return 1; }
14 struct D
: public C
{};
16 const char * g(int B::*){ return ""; }
17 int g(int D::*) { return 1; }
23 const char * str
= g(&A::Ai
);
26 // conversion of B::* to C::* is better than conversion of A::* to C::*
27 typedef void (A::*pmfa
)();
28 typedef void (B::*pmfb
)();
29 typedef void (C::*pmfc
)();