From cc6159743d6d7deb8982b7795379d1b8e9b351f9 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 28 Jan 2009 20:53:27 +0000 Subject: [PATCH] make dot() honor EvalBeforeNestingBit --- Eigen/src/Core/Dot.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Eigen/src/Core/Dot.h b/Eigen/src/Core/Dot.h index 5838af70d..e165a841b 100644 --- a/Eigen/src/Core/Dot.h +++ b/Eigen/src/Core/Dot.h @@ -266,7 +266,10 @@ MatrixBase::dot(const MatrixBase& other) const ei_assert(size() == other.size()); - return ei_dot_impl::run(derived(), other.derived()); + // dot() must honor EvalBeforeNestingBit (eg: v.dot(M*v) ) + typedef typename ei_cleantype::type ThisNested; + typedef typename ei_cleantype::type OtherNested; + return ei_dot_impl::run(derived(), other.derived()); } /** \returns the squared \em l2 norm of *this, i.e., for vectors, the dot product of *this with itself.