Re: [eigen] eigen short support: discussion thread

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


hi,

this is because in NumTraits.h, line 58 you have:

typedef int Real;

while, I guess, it should be:

typedef short Real;

cheers,

gael.


On Tue, Aug 25, 2009 at 10:54 AM, Rohit Garg<rpg.314@xxxxxxxxx> wrote:
> Hi,
>
> I pushed a new change with short support to my branch here.
>
> http://bitbucket.org/rpg/eigen2-rpg-branch/overview/
>
> I did just as Benoit spelled out here,
>
> http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2009/08/msg00108.html
>
> If you look into the NumTraits.h and MathFunctions.h files, the short
> portion added by me is a virtual clone of the int portion. with int
> replaced by float.
>
> Yet, when I try to run the unit tests, I get this,
>
> ~/Documents/numerical/eigen2-rpg-branch/build@rpg> make -j2
> [  2%] [  2%] Building CXX object test/CMakeFiles/test_array.dir/array.cpp.o
> Building CXX object test/CMakeFiles/test_adjoint.dir/adjoint.cpp.o
> In file included from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Core:131,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Array:5,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/main.h:140,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/adjoint.cpp:26:
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:58:
> error: template-id ‘precision<short int>’ for ‘short int
> Eigen::precision()’ does not match any template declaration
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:33:
> warning: inline function ‘typename Eigen::NumTraits<T>::Real
> Eigen::precision() [with T = short int]’ used but never defined
> make[2]: *** [test/CMakeFiles/test_adjoint.dir/adjoint.cpp.o] Error 1
> make[1]: *** [test/CMakeFiles/test_adjoint.dir/all] Error 2
> make[1]: *** Waiting for unfinished jobs....
> In file included from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Core:131,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/Array:5,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/main.h:140,
>                 from
> /home/rpg/Documents/numerical/eigen2-rpg-branch/test/array.cpp:26:
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:58:
> error: template-id ‘precision<short int>’ for ‘short int
> Eigen::precision()’ does not match any template declaration
> /home/rpg/Documents/numerical/eigen2-rpg-branch/Eigen/src/Core/MathFunctions.h:33:
> warning: inline function ‘typename Eigen::NumTraits<T>::Real
> Eigen::precision() [with T = short int]’ used but never defined
> make[2]: *** [test/CMakeFiles/test_array.dir/array.cpp.o] Error 1
> make[1]: *** [test/CMakeFiles/test_array.dir/all] Error 2
> make: *** [all] Error 2
> ~/Documents/numerical/eigen2-rpg-branch/build@rpg>
>
>
> Will somebody be please kind enough to look into what went wrong?
> precision<short> is plainly there. Thanks
>
> --
> Rohit Garg
>
> http://rpg-314.blogspot.com/
>
> Senior Undergraduate
> Department of Physics
> Indian Institute of Technology
> Bombay
>
>
>



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