// { dg-do assemble } | |
// conversion ops should be treated as coming from the most derived class | |
// for overload resolution. See [over.match.funcs]. | |
class X { | |
public: | |
operator bool() const; | |
}; | |
class Y : public X { | |
private: | |
operator void*() const; | |
}; | |
int f(Y const& y) { | |
return bool(y); | |
} |