diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h b/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h index 7e81d1d23..474636a89 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h @@ -225,7 +225,7 @@ struct DSizes : array { return NumDims; } - EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE size_t TotalSize() const { + EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE DenseIndex TotalSize() const { return internal::array_prod(*static_cast(this)); } diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h b/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h index ae17c9610..c1d004678 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h @@ -64,31 +64,31 @@ class TensorStorage // pure-dynamic, but without specification of all dimensions explicitly template class TensorStorage - : public TensorStorage::type> + : public TensorStorage(Options_ & Index32Bit)>::type, NumIndices_, Dynamic>::type> { typedef typename internal::compute_index_type(Options_ & Index32Bit)>::type Index; typedef DSizes Dimensions; - typedef TensorStorage::type> Base_; + typedef TensorStorage::type> Base_; public: EIGEN_DEVICE_FUNC TensorStorage() { } EIGEN_DEVICE_FUNC TensorStorage(const TensorStorage& other) : Base_(other) { } EIGEN_DEVICE_FUNC TensorStorage(internal::constructor_without_unaligned_array_assert) : Base_(internal::constructor_without_unaligned_array_assert()) {} - EIGEN_DEVICE_FUNC TensorStorage(DenseIndex size, const array& dimensions) : Base_(size, dimensions) {} + EIGEN_DEVICE_FUNC TensorStorage(Index size, const array& dimensions) : Base_(size, dimensions) {} // TensorStorage& operator=(const TensorStorage&) = default; }; // pure dynamic template -class TensorStorage::type> +class TensorStorage(Options_ & Index32Bit)>::type, NumIndices_, Dynamic>::type> { public: typedef typename internal::compute_index_type(Options_&Index32Bit)>::type Index; typedef DSizes Dimensions; - typedef TensorStorage::type> Self_; + typedef TensorStorage::type> Self_; EIGEN_DEVICE_FUNC TensorStorage() : m_data(0), m_dimensions() {} EIGEN_DEVICE_FUNC TensorStorage(internal::constructor_without_unaligned_array_assert)