1// Copyright (C) 2005 Free Software Foundation, Inc. 2// Contributed by Nathan Sidwell 2 Apr 2005 <nathan@codesourcery.com> 3 4// PR 20723 5// Origin: Andrew Pinski <pinskia@gcc.gnu.org> 6// Nathan Sidwell <nathan@gcc.gnu.org> 7 8template <typename T> class srp; 9template <typename T> struct ptr 10{ 11 template <typename U> ptr(const srp<U> &other); // { dg-message "ptr<T>::ptr" } 12}; 13template <typename T> struct srp 14{ 15 template <typename U> operator ptr<U>(void) const; // { dg-message "srp<T>::operator" } 16}; 17ptr<int> parent_get() 18{ 19 srp<int> parent; 20 return parent; // { dg-error "is ambiguous" } 21} 22