[eigen] TriangularView::coeff() fails to compile

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


Hello,

the following program, with Eigen3

#include <Eigen/Eigen>

int main()
{
  Eigen::MatrixXd X(2, 2);
  X.triangularView<Eigen::Upper>().coeff(0, 0);
}


results in the compiler error (sorry that it's in German)


In file included from ../eigen/Eigen/Core:278:0,
                 from ../eigen/Eigen/Dense:1,
                 from ../eigen/Eigen/Eigen:1,
                 from test.cpp:1:
../eigen/Eigen/src/Core/TriangularMatrix.h: In Elementfunktion 
»Eigen::TriangularView<MatrixType, Mode>::Scalar 
Eigen::TriangularView<MatrixType, 
Mode>::coeff(Eigen::TriangularView<MatrixType, Mode>::Index, 
Eigen::TriangularView<MatrixType, Mode>::Index) const [with _MatrixType = 
Eigen::Matrix<double, -0x00000000000000001, -0x00000000000000001>, unsigned 
int _Mode = 2u, Eigen::TriangularView<MatrixType, Mode>::Scalar = double, 
Eigen::TriangularView<MatrixType, Mode>::Index = long int]«:
test.cpp:6:46:   instantiated from here
../eigen/Eigen/src/Core/TriangularMatrix.h:204:7: Fehler: Die Übergabe von 
»const Eigen::TriangularView<Eigen::Matrix<double, -0x00000000000000001, 
-0x00000000000000001>, 2u>« als »this«-Argument von »void 
Eigen::TriangularBase<Derived>::check_coordinates_internal(Eigen::TriangularBase<Derived>::Index, 
Eigen::TriangularBase<Derived>::Index) [with Derived = 
Eigen::TriangularView<Eigen::Matrix<double, -0x00000000000000001, 
-0x00000000000000001>, 2u>, Eigen::TriangularBase<Derived>::Index = long int]« 
streicht Qualifizierer


Is this a bug? Since coeff() only reads from the triangular view, I think the 
code above should be supported.

Cheers
Martin



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