Re: [eigen] triangular test fails to compile

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Yes, I know about this problem, this is one of the things that my fork
eigen-storageorders is aiming to fix, sorry for the long time it's
taking, it's very unusual for us to have tests failing for so long.

Benoit

2010/3/29 Riccardo Gori <goriccardo@xxxxxxxxx>:
> Hello everybody,
> using hg version of Eigen I can't compile the following tests (make check):
>
> - triangular (CALL_SUBTEST_1)
> - product_trsolve (CALL_SUBTEST_5)
> - cholesky (CALL_SUBTEST_1)
> - eigensolver_selfadjoint (CALL_SUBTEST_6)
> - matrix_function (CALL_SUBTEST_1) [in unsupported]
>
> They have in common the use of 1x1 matrices; here is the error of triangular,
> others errors are similar:
>
> In file included from /home/riccardo/Sources/eigen/Eigen/Core:256,
>                 from /home/riccardo/Sources/eigen/Eigen/QR:4,
>                 from /home/riccardo/Sources/eigen/test/main.h:153,
>                 from /home/riccardo/Sources/eigen/test/triangular.cpp:25:
> /home/riccardo/Sources/eigen/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>]’:
> /home/riccardo/Sources/eigen/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> >]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/test/triangular.cpp:113:   instantiated from
> ‘void triangular_square(const MatrixType&) [with MatrixType =
> Eigen::Matrix<float, 1, 1, 0, 1, 1>]’
> /home/riccardo/Sources/eigen/test/triangular.cpp:241:   instantiated from here
> /home/riccardo/Sources/eigen/Eigen/src/Core/CwiseBinaryOp.h:120: error:
> ‘YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES’ is not a member of
> ‘Eigen::ei_static_assert<false>’
> /home/riccardo/Sources/eigen/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>]’:
> /home/riccardo/Sources/eigen/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> >]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/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]’
> /home/riccardo/Sources/eigen/test/triangular.cpp:97:   instantiated from ‘void
> triangular_square(const MatrixType&) [with MatrixType = Eigen::Matrix<float, 1,
> 1, 0, 1, 1>]’
> /home/riccardo/Sources/eigen/test/triangular.cpp:241:   instantiated from here
> /home/riccardo/Sources/eigen/Eigen/src/Core/CwiseBinaryOp.h:120: error:
> ‘YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES’ is not a member of
> ‘Eigen::ei_static_assert<false>’
> make[3]: *** [test/CMakeFiles/triangular_1.dir/triangular.cpp.o] Error 1
> make[2]: *** [test/CMakeFiles/triangular_1.dir/all] Error 2
> make[2]: *** Waiting for unfinished jobs....
>
>
> I'm using x86_64 linux with GCC 4.4.3 (on Fedora) with vectorization enabled.
>
> Thanks,
> Riccardo
>
>
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/