From e9ecfad7967fd5285846647372897ecdc125f976 Mon Sep 17 00:00:00 2001 From: Benoit Steiner Date: Thu, 12 Nov 2015 16:41:14 -0800 Subject: Started to make the IndexList code compile by more compilers --- .../Eigen/CXX11/src/Tensor/TensorIndexList.h | 30 ++++++++++++---------- 1 file changed, 17 insertions(+), 13 deletions(-) (limited to 'unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h') diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h b/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h index dcd2464f1..69d21d3c1 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h @@ -336,26 +336,32 @@ struct all_indices_known_statically > }; template -struct indices_statically_known_to_increase { - constexpr bool operator() () const { +struct indices_statically_known_to_increase_impl { + static constexpr bool run() { return false; } }; template -struct indices_statically_known_to_increase > { - constexpr bool operator() () const { - return IndexList().values_statically_known_to_increase(); + struct indices_statically_known_to_increase_impl > { + static constexpr bool run() { + return Eigen::IndexList().values_statically_known_to_increase(); } }; template -struct indices_statically_known_to_increase > { - constexpr bool operator() () const { - return IndexList().values_statically_known_to_increase(); + struct indices_statically_known_to_increase_impl > { + static constexpr bool run() { + return Eigen::IndexList().values_statically_known_to_increase(); } }; +template +static constexpr bool indices_statically_known_to_increase() { + return indices_statically_known_to_increase_impl::run(); +} + + template struct index_statically_eq { constexpr bool operator() (DenseIndex, DenseIndex) const { @@ -473,11 +479,9 @@ struct all_indices_known_statically { }; template -struct indices_statically_known_to_increase { - EIGEN_ALWAYS_INLINE EIGEN_DEVICE_FUNC bool operator() () const { - return false; - } -}; +static EIGEN_ALWAYS_INLINE EIGEN_DEVICE_FUNC bool indices_statically_known_to_increase() { + return false; +} template struct index_statically_eq { -- cgit v1.2.3