mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
fix a bunch of warnings (actual issues) reported by Frank
This commit is contained in:
@@ -28,9 +28,10 @@
|
||||
template<typename Derived>
|
||||
void doSomeRankPreservingOperations(Eigen::MatrixBase<Derived>& m)
|
||||
{
|
||||
typedef typename Derived::RealScalar RealScalar;
|
||||
for(int a = 0; a < 3*(m.rows()+m.cols()); a++)
|
||||
{
|
||||
double d = Eigen::ei_random<double>(-1,1);
|
||||
RealScalar d = Eigen::ei_random<RealScalar>(-1,1);
|
||||
int i = Eigen::ei_random<int>(0,m.rows()-1); // i is a random row number
|
||||
int j;
|
||||
do {
|
||||
|
||||
@@ -45,9 +45,7 @@ void test_meta()
|
||||
|
||||
VERIFY(( ei_is_same_type<float*,ei_unconst<const float*>::type >::ret));
|
||||
VERIFY(( ei_is_same_type<float&,ei_unconst<const float&>::type >::ret));
|
||||
VERIFY(( ei_is_same_type<float&,ei_unconst<const FloatRef>::type >::ret));
|
||||
VERIFY(( ei_is_same_type<float&,ei_unconst<ConstFloatRef>::type >::ret));
|
||||
VERIFY(( ei_is_same_type<float&,ei_unconst<const ConstFloatRef>::type >::ret));
|
||||
|
||||
VERIFY(( ei_is_same_type<float&,ei_unconst<float&>::type >::ret));
|
||||
VERIFY(( ei_is_same_type<float,ei_unref<float&>::type >::ret));
|
||||
|
||||
@@ -24,7 +24,9 @@
|
||||
// Eigen. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
// this hack is needed to make this file compiles with -pedantic (gcc)
|
||||
#ifdef __GNUC__
|
||||
#define throw(X)
|
||||
#endif
|
||||
// discard stack allocation as that too bypasses malloc
|
||||
#define EIGEN_STACK_ALLOCATION_LIMIT 0
|
||||
// any heap allocation will raise an assert
|
||||
|
||||
@@ -34,7 +34,7 @@ template<typename MatrixType> void matrixSum(const MatrixType& m)
|
||||
MatrixType m1 = MatrixType::Random(rows, cols);
|
||||
|
||||
VERIFY_IS_MUCH_SMALLER_THAN(MatrixType::Zero(rows, cols).sum(), Scalar(1));
|
||||
VERIFY_IS_APPROX(MatrixType::Ones(rows, cols).sum(), Scalar(rows*cols));
|
||||
VERIFY_IS_APPROX(MatrixType::Ones(rows, cols).sum(), Scalar(float(rows*cols))); // the float() here to shut up excessive MSVC warning about int->complex conversion being lossy
|
||||
Scalar x = Scalar(0);
|
||||
for(int i = 0; i < rows; i++) for(int j = 0; j < cols; j++) x += m1(i,j);
|
||||
VERIFY_IS_APPROX(m1.sum(), x);
|
||||
|
||||
Reference in New Issue
Block a user