diff --git a/Eigen/src/Core/SolveTriangular.h b/Eigen/src/Core/SolveTriangular.h index dfcbfe18eb..20c0408bd9 100755 --- a/Eigen/src/Core/SolveTriangular.h +++ b/Eigen/src/Core/SolveTriangular.h @@ -233,8 +233,8 @@ void MatrixBase::solveTriangularInPlace(MatrixBase& other ei_assert(!(Flags & ZeroDiagBit)); ei_assert(Flags & (UpperTriangularBit|LowerTriangularBit)); - enum { copy = ei_traits::Flags&RowMajorBit }; - + enum { copy = ei_traits::Flags & RowMajorBit }; + typedef typename ei_meta_if::type, OtherDerived&>::ret OtherCopy; OtherCopy otherCopy(other.derived()); diff --git a/Eigen/src/Core/util/Macros.h b/Eigen/src/Core/util/Macros.h index 348f313d28..b95f72e7b1 100644 --- a/Eigen/src/Core/util/Macros.h +++ b/Eigen/src/Core/util/Macros.h @@ -113,7 +113,7 @@ using Eigen::ei_cos; #define EIGEN_INHERIT_ASSIGNMENT_OPERATOR(Derived, Op) \ template \ -Derived& operator Op(const MatrixBase& other) \ +Derived& operator Op(const Eigen::MatrixBase& other) \ { \ return Eigen::MatrixBase::operator Op(other.derived()); \ } \