From 0467af1b83fcffc85f4c89b94db2e49ead6869c9 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Wed, 7 Nov 2012 15:00:24 +0000 Subject: [PATCH] Fix sp_convertible. [SVN r81230] --- .../boost/smart_ptr/detail/sp_convertible.hpp | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/include/boost/smart_ptr/detail/sp_convertible.hpp b/include/boost/smart_ptr/detail/sp_convertible.hpp index 00e5cb1..4f47709 100644 --- a/include/boost/smart_ptr/detail/sp_convertible.hpp +++ b/include/boost/smart_ptr/detail/sp_convertible.hpp @@ -53,24 +53,9 @@ template< class Y, class T > struct sp_convertible< Y, T[] > enum _vt { value = false }; }; -template< class T > struct sp_convertible< T[], T[] > +template< class Y, class T > struct sp_convertible< Y[], T[] > { - enum _vt { value = true }; -}; - -template< class T > struct sp_convertible< T[], T const [] > -{ - enum _vt { value = true }; -}; - -template< class T > struct sp_convertible< T[], T volatile [] > -{ - enum _vt { value = true }; -}; - -template< class T > struct sp_convertible< T[], T const volatile [] > -{ - enum _vt { value = true }; + enum _vt { value = sp_convertible< Y[1], T[1] >::value }; }; struct sp_empty