diff options
-rw-r--r-- | unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h | 3 | ||||
-rw-r--r-- | unsupported/Eigen/CXX11/src/Tensor/TensorRef.h | 2 | ||||
-rw-r--r-- | unsupported/test/CMakeLists.txt | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h b/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h index 2dd8e274b..c5965065e 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h @@ -385,6 +385,9 @@ static const size_t value = Sizes<Indices...>::count; template <typename std::size_t... Indices> struct array_size<Sizes<Indices...> > { static const size_t value = Sizes<Indices...>::count; }; + template <std::size_t n, typename std::size_t... Indices> EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE std::size_t array_get(const Sizes<Indices...>) { + return get<n, typename Sizes<Indices...>::Base>::value; +}; #else template <std::size_t V1, std::size_t V2, std::size_t V3, std::size_t V4, std::size_t V5> struct array_size<const Sizes<V1,V2,V3,V4,V5> > { static const size_t value = Sizes<V1,V2,V3,V4,V5>::count; diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h b/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h index db2027a5f..d43fb286e 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h @@ -64,7 +64,7 @@ class TensorLazyEvaluatorReadOnly : public TensorLazyBaseEvaluator<Dimensions, t virtual const Scalar coeff(DenseIndex index) const { return m_impl.coeff(index); } - virtual Scalar& coeffRef(DenseIndex index) { + virtual Scalar& coeffRef(DenseIndex) { eigen_assert(false && "can't reference the coefficient of a rvalue"); return *reinterpret_cast<Scalar*>(dummy); }; diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt index 2b5395013..49a8013ea 100644 --- a/unsupported/test/CMakeLists.txt +++ b/unsupported/test/CMakeLists.txt @@ -100,7 +100,7 @@ if(EIGEN_TEST_CXX11) ei_add_test(cxx11_meta "-std=c++0x") ei_add_test(cxx11_tensor_simple "-std=c++0x") ei_add_test(cxx11_tensor_symmetry "-std=c++0x") -# ei_add_test(cxx11_tensor_assign "-std=c++0x") + ei_add_test(cxx11_tensor_assign "-std=c++0x") # ei_add_test(cxx11_tensor_dimension "-std=c++0x") ei_add_test(cxx11_tensor_comparisons "-std=c++0x") ei_add_test(cxx11_tensor_contraction "-std=c++0x") |