Fix issue with ambiguous conversions.

This commit is contained in:
jzmaddock
2015-06-02 18:07:11 +01:00
parent 175db1375f
commit e5b678a673

View File

@@ -50,7 +50,7 @@ namespace boost{ namespace multiprecision{ namespace detail{
template <bool b, class T, class U>
struct is_second_backend_imp{ static const bool value = false; };
template <class T, class U>
struct is_second_backend_imp<true, T, U>{ static const bool value = is_convertible<T, number<U> >::value || is_convertible<T, number<U, et_off> >::value; };
struct is_second_backend_imp<true, T, U>{ static const bool value = (is_convertible<T, number<U, et_on> >::value || is_convertible<T, number<U, et_off> >::value) && !is_first_backend<T, U>::value; };
template <class T, class U>
struct is_second_backend : is_second_backend_imp<is_backend<U>::value, T, U> {};