// { dg-do assemble } template class A { public: operator const T*() const; const T* cast() const; }; template const T* A::cast() const { return operator const T*(); } template class A;