| // { dg-do compile } |
| |
| // Origin: Martin von Loewis <martin@v.loewis.de> |
| |
| // PR c++/157: Incorrect type/template decision in function parameter. |
| |
| template <class _Tp> class auto_ptr {}; |
| template <class _Tp> |
| class counted_ptr |
| { |
| public: |
| counted_ptr(auto_ptr<_Tp>& __a); // { dg-error "candidate" } |
| auto_ptr<_Tp> auto_ptr(); |
| }; |
| |
| template <class _Tp> |
| inline counted_ptr<_Tp>::counted_ptr(class auto_ptr& __a) // { dg-error "required" } |
| { // { dg-error "no type|not match|template" } |
| } |
| |
| template <class _Tp> |
| inline class auto_ptr<_Tp> counted_ptr<_Tp>::auto_ptr() |
| { |
| } |