"Paul Mensonides" <[EMAIL PROTECTED]> writes: > ----- Original Message ----- > From: "David Abrahams" <[EMAIL PROTECTED]> > >> The latter. It was just an experiment. Fortunately, nothing I'm >> doing depends very much on it. It was prompted by the fact that >> Borland 5.51 can handle enable_if, but not in a templated constructor: >> >> template <class T> >> struct X >> { >> template <class U> >> X(X<U> const&, typename enable_if<some_property_of<U>::value, > int*>::type = 0); > ^ > It chokes here?
Sorry, no. I mean the 2nd '<' in that line. > Is it legal to use the template parameter 'U' in a non-deduced > context like that? I'm curious because I thought that it wasn't > (though I could be wrong). Why do you say that's non-deduced? Up to the point of enable_if, it's standard stuff; that's how shared_ptr conversion works. -- David Abrahams [EMAIL PROTECTED] * http://www.boost-consulting.com Boost support, enhancements, training, and commercial distribution _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost