From 0a9ad6fc72f83ac0d3e4fa8d0fa6b339969f341a Mon Sep 17 00:00:00 2001 From: Benoit Steiner Date: Fri, 28 Oct 2016 07:54:27 -0700 Subject: Worked around Visual Studio compilation errors --- unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h | 4 +++- unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h | 7 ++++--- 2 files changed, 7 insertions(+), 4 deletions(-) (limited to 'unsupported/Eigen/CXX11/src/Tensor') diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h b/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h index 9d5cf1a8c..68d14a7e5 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h @@ -38,7 +38,9 @@ struct traits > }; template struct MakePointer { - typedef typename MakePointer_::Type Type; + // Intermediate typedef to workaround MSVC issue. + typedef MakePointer_ MakePointerT; + typedef typename MakePointerT::Type Type; }; }; diff --git a/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h b/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h index 9cf4a07e5..bbd5eb374 100644 --- a/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +++ b/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h @@ -42,9 +42,10 @@ struct traits > enum { Flags = 0 }; - template - struct MakePointer { - typedef typename MakePointer_::Type Type; + template struct MakePointer { + // Intermediate typedef to workaround MSVC issue. + typedef MakePointer_ MakePointerT; + typedef typename MakePointerT::Type Type; }; }; -- cgit v1.2.3