refactor: clang still does not support C++17 feature related to template tempaltes with default compilation flags

This commit is contained in:
Mateusz Pusz
2023-06-15 17:27:28 +03:00
parent dcad3b6a56
commit 6d488071fc

View File

@ -268,10 +268,10 @@ struct expr_simplify<type_list<power<T, Ints1...>, NRest...>, type_list<power<T,
// expr_less
template<typename Lhs, typename Rhs, template<typename, typename> typename Pred>
template<typename Lhs, typename Rhs, template<typename, typename, auto...> typename Pred>
struct expr_less_impl : Pred<expr_type<Lhs>, expr_type<Rhs>> {};
template<typename T, int... Ints, template<typename, typename> typename Pred>
template<typename T, int... Ints, template<typename, typename, auto...> typename Pred>
struct expr_less_impl<T, power<T, Ints...>, Pred> : std::true_type {};
/**
@ -280,7 +280,7 @@ struct expr_less_impl<T, power<T, Ints...>, Pred> : std::true_type {};
* Algorithm accounts not only for explicit types but also for the case when they
* are wrapped within `power<T, Num, Den>`.
*/
template<typename Lhs, typename Rhs, template<typename, typename> typename Pred>
template<typename Lhs, typename Rhs, template<typename, typename, auto...> typename Pred>
using expr_less = expr_less_impl<Lhs, Rhs, Pred>;