[eigen] matrix-size-mismatch error in EIGEN_TEST_PART1 test/triangular.cpp |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: [eigen] matrix-size-mismatch error in EIGEN_TEST_PART1 test/triangular.cpp
- From: Manoj Rajagopalan <rmanoj@xxxxxxxxx>
- Date: Sat, 3 Apr 2010 11:39:31 -0400
- Organization: EECS Dept., University of Michigan, Ann Arbor, MI, USA
Hi eigen developers,
I am trying to build the test suite off the default branch in the Hg repo. The following line in test/triangular.cpp is causing a
matrix-size-mismatch static assertion fail on my platform:
void test_triangular() { // ...
CALL_SUBTEST_1( triangular_square(Matrix<float, 1, 1>()) );
Commenting this line out gets the compilation back on track. Looks like the corner case of a 1x1 matrix needs a little more
attention.
My platform is gcc 4.2.4 / KUbuntu 8.04 / Intel Core 2
The exact error log is provided below. My working copy is in sync with the Hg repo and I have made no changes.
thanks,
Manoj
cd /extra/home/rmanoj/Software/Libraries/eigen-hg/build/test
&& /usr/bin/c++ -DHAS_GSL -DEIGEN_CHOLMOD_SUPPORT -DEIGEN_UMFPACK_SUPPORT -DEIGEN_SUPERLU_SUPPORT -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NO_DEBUG -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fexceptions -fno-check-new -fno-common -fstrict-aliasing -Wno-variadic-macros -Wextra -pedantic -msse2 -msse3 -g2 -g0 -O3 -fno-inline-functions -I/extra/home/rmanoj/Software/Libraries/eigen-hg/build/test -I/extra/home/rmanoj/Software/Libraries/eigen-hg/test -I/extra/home/rmanoj/Software/Libraries/eigen-hg -I/extra/home/rmanoj/Software/Libraries/eigen-hg/build -I/usr/include/suitesparse -I/usr/include/superlu -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore -DEIGEN_TEST_FUNC=triangular -DEIGEN_TEST_PART_1=1 -o
CMakeFiles/triangular_1.dir/triangular.cpp.o -c /extra/home/rmanoj/Software/Libraries/eigen-hg/test/triangular.cpp
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/CwiseBinaryOp.h: In constructor ‘Eigen::CwiseBinaryOp<BinaryOp,
Lhs, Rhs>::CwiseBinaryOp(const Lhs&, const Rhs&, const BinaryOp&) [with BinaryOp = Eigen::ei_scalar_product_op<float>, Lhs
= Eigen::Transpose<Eigen::Block<Eigen::Block<Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, 1, 1, 32>, 1, 0, 32> >,
Rhs = Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 0, 32>]’:
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/../plugins/MatrixCwiseBinaryOps.h:39: instantiated from ‘const
Eigen::CwiseBinaryOp<Eigen::ei_scalar_product_op<typename Eigen::ei_scalar_product_traits<typename
Eigen::ei_traits<T>::Scalar, typename Eigen::ei_traits<OtherDerived>::Scalar>::ReturnType>, Derived, OtherDerived>
Eigen::MatrixBase<Derived>::cwiseProduct(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived =
Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 0, 32>, Derived =
Eigen::Transpose<Eigen::Block<Eigen::Block<Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, 1, 1, 32>, 1, 0, 32> >]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:208: instantiated from ‘static void
Eigen::ei_triangular_solver_unroller<Lhs, Rhs, Mode, Index, Size, false>::run(const Lhs&, Rhs&) [with Lhs =
Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, Rhs = Eigen::Matrix<float, 1, 1, 0, 1, 1>, int Mode = 2, int Index = 0, int
Size = 1]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:225: instantiated from ‘static void
Eigen::ei_triangular_solver_selector<Lhs, Rhs, 1, Mode, 2, StorageOrder, 1>::run(const Lhs&, Rhs&) [with Lhs =
Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, Rhs = Eigen::Matrix<float, 1, 1, 0, 1, 1>, int Mode = 2, int StorageOrder
= 1]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:256: instantiated from ‘void
Eigen::TriangularView<MatrixType, Mode>::solveInPlace(const Eigen::MatrixBase<OtherDerived>&) const [with int Side = 1,
OtherDerived = Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, _MatrixType = Eigen::Transpose<Eigen::Matrix<float, 1,
1, 0, 1, 1> >, unsigned int _Mode = 2u]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/TriangularMatrix.h:285: instantiated from ‘void
Eigen::TriangularView<MatrixType, Mode>::solveInPlace(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived =
Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >, _MatrixType = Eigen::Transpose<Eigen::Matrix<float, 1, 1, 0, 1, 1> >,
unsigned int _Mode = 2u]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/test/triangular.cpp:113: instantiated from ‘void triangular_square(const
MatrixType&) [with MatrixType = Eigen::Matrix<float, 1, 1, 0, 1, 1>]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/test/triangular.cpp:241: instantiated from here
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/CwiseBinaryOp.h:120:
error: ‘YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES’ is not a member of ‘Eigen::ei_static_assert<false>’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/CwiseBinaryOp.h: In constructor ‘Eigen::CwiseBinaryOp<BinaryOp,
Lhs, Rhs>::CwiseBinaryOp(const Lhs&, const Rhs&, const BinaryOp&) [with BinaryOp = Eigen::ei_scalar_product_op<float>, Lhs
= Eigen::Transpose<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 1, 32>, 1, 0, 32> >, Rhs =
Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 0, 32>]’:
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/../plugins/MatrixCwiseBinaryOps.h:39: instantiated from ‘const
Eigen::CwiseBinaryOp<Eigen::ei_scalar_product_op<typename Eigen::ei_scalar_product_traits<typename
Eigen::ei_traits<T>::Scalar, typename Eigen::ei_traits<OtherDerived>::Scalar>::ReturnType>, Derived, OtherDerived>
Eigen::MatrixBase<Derived>::cwiseProduct(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived =
Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 0, 32>, Derived =
Eigen::Transpose<Eigen::Block<Eigen::Block<Eigen::Matrix<float, 1, 1, 0, 1, 1>, 1, 1, 32>, 1, 0, 32> >]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:208: instantiated from ‘static void
Eigen::ei_triangular_solver_unroller<Lhs, Rhs, Mode, Index, Size, false>::run(const Lhs&, Rhs&) [with Lhs = Eigen::Matrix<float,
1, 1, 0, 1, 1>, Rhs = Eigen::Matrix<float, 1, 1, 0, 1, 1>, int Mode = 2, int Index = 0, int Size = 1]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:225: instantiated from ‘static void
Eigen::ei_triangular_solver_selector<Lhs, Rhs, 1, Mode, 2, StorageOrder, 1>::run(const Lhs&, Rhs&) [with Lhs =
Eigen::Matrix<float, 1, 1, 0, 1, 1>, Rhs = Eigen::Matrix<float, 1, 1, 0, 1, 1>, int Mode = 2, int StorageOrder = 0]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:256: instantiated from ‘void
Eigen::TriangularView<MatrixType, Mode>::solveInPlace(const Eigen::MatrixBase<OtherDerived>&) const [with int Side = 1,
OtherDerived = Eigen::Matrix<float, 1, 1, 0, 1, 1>, _MatrixType = Eigen::Matrix<float, 1, 1, 0, 1, 1>, unsigned int _Mode = 2u]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/SolveTriangular.h:300: instantiated from ‘typename
Eigen::ei_plain_matrix_type_column_major<OtherDerived>::type Eigen::TriangularView<MatrixType, Mode>::solve(const
Eigen::MatrixBase<OtherDerived>&) const [with int Side = 1, OtherDerived = Eigen::Matrix<float, 1, 1, 0, 1, 1>, _MatrixType =
Eigen::Matrix<float, 1, 1, 0, 1, 1>, unsigned int _Mode = 2u]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/TriangularMatrix.h:281: instantiated from ‘typename
Eigen::ei_plain_matrix_type_column_major<OtherDerived>::type Eigen::TriangularView<MatrixType, Mode>::solve(const
Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived = Eigen::Matrix<float, 1, 1, 0, 1, 1>, _MatrixType =
Eigen::Matrix<float, 1, 1, 0, 1, 1>, unsigned int _Mode = 2u]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/test/triangular.cpp:97: instantiated from ‘void triangular_square(const
MatrixType&) [with MatrixType = Eigen::Matrix<float, 1, 1, 0, 1, 1>]’
/extra/home/rmanoj/Software/Libraries/eigen-hg/test/triangular.cpp:241: instantiated from here
/extra/home/rmanoj/Software/Libraries/eigen-hg/Eigen/src/Core/CwiseBinaryOp.h:120:
error: ‘YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES’ is not a member of ‘Eigen::ei_static_assert<false>’