Re: [eigen] Matrix blocks not working with gcc 4.5.0

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


Huh, I've never encountered that particular quick before. Interesting, thanks!

-----Original Message-----
From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
To: eigen@xxxxxxxxxxxxxxxxxxx
Sent: Fri, Sep 24, 2010 4:16 pm
Subject: Re: [eigen] Matrix blocks not working with gcc 4.5.0


without even looking at the example i know the problem :p
you forgot to write 'template' when calling a templated method on an
object whose type depends on template params.

foo.template bar();

2010/9/24  <lfrfly@xxxxxxxxxxx>:
I've attached a simple test program which demonstrates the problem.
It works
fine in Visual Studio 2010, but gcc 4.5.0 chokes. For reference, the
errors
I'm seeing are:

testeigenblock.cpp: In member function ‘void S<N>::F()’:
testeigenblock.cpp:15:23: error: request for member ‘setIdentity’ in
‘(0,
0)’, which is of non-class type ‘int’
testeigenblock.cpp: In member function ‘void S<N>::F() [with int N =
4]’:
testeigenblock.cpp:23:9:   instantiated from here
testeigenblock.cpp:15:5: error: invalid operands of types ‘<unresolved
overloaded function type>’ and ‘int’ to binary ‘operator<’
testeigenblock.cpp:16:5: error: invalid operands of types ‘<unresolved
overloaded function type>’ and ‘int’ to binary ‘operator<’

Any idea how to fix this?





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