aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/TriangularMatrix.h
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2015-10-09 12:10:48 +0200
committerGravatar Gael Guennebaud <g.gael@free.fr>2015-10-09 12:10:48 +0200
commit1429daf85087a6c913a8274fd4c6827f9eb57aef (patch)
tree83dda9ea04cd686ce09903f0031f344fa877aa19 /Eigen/src/Core/TriangularMatrix.h
parent72bd05b6d8240b60e294397ac02a13ad53ae6167 (diff)
Add lvalue check for TriangularView::swap, and fix deprecated TriangularView::lazyAssign
Diffstat (limited to 'Eigen/src/Core/TriangularMatrix.h')
-rw-r--r--Eigen/src/Core/TriangularMatrix.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/Eigen/src/Core/TriangularMatrix.h b/Eigen/src/Core/TriangularMatrix.h
index 63a1af8c1..e9b34ebdf 100644
--- a/Eigen/src/Core/TriangularMatrix.h
+++ b/Eigen/src/Core/TriangularMatrix.h
@@ -460,6 +460,7 @@ template<typename _MatrixType, unsigned int _Mode> class TriangularViewImpl<_Mat
EIGEN_DEVICE_FUNC
void swap(TriangularBase<OtherDerived> const & other)
{
+ EIGEN_STATIC_ASSERT_LVALUE(OtherDerived);
call_assignment(derived(), other.const_cast_derived(), internal::swap_assign_op<Scalar>());
}
@@ -468,6 +469,7 @@ template<typename _MatrixType, unsigned int _Mode> class TriangularViewImpl<_Mat
EIGEN_DEVICE_FUNC
void swap(MatrixBase<OtherDerived> const & other)
{
+ EIGEN_STATIC_ASSERT_LVALUE(OtherDerived);
call_assignment(derived(), other.const_cast_derived(), internal::swap_assign_op<Scalar>());
}
@@ -503,7 +505,7 @@ template<typename MatrixType, unsigned int Mode>
template<typename OtherDerived>
void TriangularViewImpl<MatrixType, Mode, Dense>::lazyAssign(const MatrixBase<OtherDerived>& other)
{
- internal::call_assignment(derived().noalias(), other.template triangularView<Mode>());
+ internal::call_assignment_no_alias(derived(), other.template triangularView<Mode>());
}
@@ -523,7 +525,7 @@ template<typename OtherDerived>
void TriangularViewImpl<MatrixType, Mode, Dense>::lazyAssign(const TriangularBase<OtherDerived>& other)
{
eigen_assert(Mode == int(OtherDerived::Mode));
- internal::call_assignment(derived().noalias(), other.derived());
+ internal::call_assignment_no_alias(derived(), other.derived());
}
/***************************************************************************