1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
// { dg-do assemble } // Bug: g++ doesn't find the conversion path from DPtr& to B*. class B {}; class D : public B {}; class DPtr { public: operator D*() const; }; void foo (B* bp); void bar (DPtr& dp) { foo (dp); }