aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Jitse Niesen <jitse@maths.leeds.ac.uk>2010-01-26 16:02:19 +0000
committerGravatar Jitse Niesen <jitse@maths.leeds.ac.uk>2010-01-26 16:02:19 +0000
commitbdb0e9fcd03a21c2451a893424bb71955917ed07 (patch)
treeb471b98ddaf1066b39b8bd1216c52ca6248f732d
parent1403cea087df98dae21408518c33a22f8d2d99d1 (diff)
Clean up one compilation error and two warnings.
-rw-r--r--Eigen/src/Core/IO.h13
-rw-r--r--cmake/EigenTesting.cmake1
-rw-r--r--unsupported/Eigen/AlignedVector33
-rw-r--r--unsupported/Eigen/AutoDiff2
4 files changed, 13 insertions, 6 deletions
diff --git a/Eigen/src/Core/IO.h b/Eigen/src/Core/IO.h
index d132064a6..8f91e272e 100644
--- a/Eigen/src/Core/IO.h
+++ b/Eigen/src/Core/IO.h
@@ -143,9 +143,16 @@ std::ostream & ei_print_matrix(std::ostream & s, const Derived& _m, const IOForm
}
else if(fmt.precision == FullPrecision)
{
- explicit_precision = NumTraits<Scalar>::HasFloatingPoint
- ? std::ceil(-ei_log(epsilon<Scalar>())/ei_log(10.0))
- : 0;
+ if (NumTraits<Scalar>::HasFloatingPoint)
+ {
+ typedef typename NumTraits<Scalar>::Real RealScalar;
+ RealScalar explicit_precision_fp = std::ceil(-ei_log(epsilon<Scalar>())/ei_log(10.0));
+ explicit_precision = static_cast<std::streamsize>(explicit_precision_fp);
+ }
+ else
+ {
+ explicit_precision = 0;
+ }
}
else
{
diff --git a/cmake/EigenTesting.cmake b/cmake/EigenTesting.cmake
index b8cd63ac1..4d02a470a 100644
--- a/cmake/EigenTesting.cmake
+++ b/cmake/EigenTesting.cmake
@@ -219,6 +219,7 @@ if(CMAKE_COMPILER_IS_GNUCXX)
option(EIGEN_COVERAGE_TESTING "Enable/disable gcov" OFF)
if(EIGEN_COVERAGE_TESTING)
set(COVERAGE_FLAGS "-fprofile-arcs -ftest-coverage")
+ set(CTEST_CUSTOM_COVERAGE_EXCLUDE "/test/")
else(EIGEN_COVERAGE_TESTING)
set(COVERAGE_FLAGS "")
endif(EIGEN_COVERAGE_TESTING)
diff --git a/unsupported/Eigen/AlignedVector3 b/unsupported/Eigen/AlignedVector3
index 37018bfc6..15510a258 100644
--- a/unsupported/Eigen/AlignedVector3
+++ b/unsupported/Eigen/AlignedVector3
@@ -64,7 +64,8 @@ template<typename _Scalar> class AlignedVector3
CoeffType m_coeffs;
public:
- EIGEN_GENERIC_PUBLIC_INTERFACE(AlignedVector3)
+ typedef MatrixBase<AlignedVector3<_Scalar> > Base;
+ EIGEN_DENSE_PUBLIC_INTERFACE(AlignedVector3)
using Base::operator*;
inline int rows() const { return 3; }
diff --git a/unsupported/Eigen/AutoDiff b/unsupported/Eigen/AutoDiff
index a8b3ea90a..97164525c 100644
--- a/unsupported/Eigen/AutoDiff
+++ b/unsupported/Eigen/AutoDiff
@@ -25,8 +25,6 @@
#ifndef EIGEN_AUTODIFF_MODULE
#define EIGEN_AUTODIFF_MODULE
-#include <Eigen/Array>
-
namespace Eigen {
/** \ingroup Unsupported_modules