Re: [eigen] The horrors of an XLC port/compatibility

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


Hi List,

As Benoit suggested earlier, I did a clean pull from the Eigen
repository to verify that I hadn't improperly backed out of my hg
commit.  The resulting diff from the sources after fixing Macros.h is
here:

changeset:   2355:6e2747dd61a5
user:        Thomas Capricelli <orzel@xxxxxxxxxxxxxxx>
date:        Fri Jan 22 19:26:29 2010 +0100
summary:     fix the script again (definitely?) + cleaning

aron@fen1:~/scratch/eigen% hg diff
diff -r 6e2747dd61a5 Eigen/src/Core/util/Macros.h
--- a/Eigen/src/Core/util/Macros.h	Fri Jan 22 19:26:29 2010 +0100
+++ b/Eigen/src/Core/util/Macros.h	Sat Jan 23 08:54:57 2010 +0300
@@ -218,6 +218,8 @@
 #elif (defined __SUNPRO_CC)
   // FIXME not sure about this one:
   #define EIGEN_ALIGN_TO_BOUNDARY(n) __attribute__((aligned(n)))
+#elif (defined __IBMCPP__)
+  #define EIGEN_ALIGN_TO_BOUNDARY(n) __attribute__((aligned(n)))
 #else
   #error Please tell me what is the equivalent of
__attribute__((aligned(n))) for your compiler
 #endif

Now I'm still getting the same error message here:

cd /home/aron/scratch/build/unsupported/test &&
/bgsys/drivers/V1R4M0_320_2009-090815P/ppc/comm/bin/mpixlcxx_r  -+  -O
-DNDEBUG -I/home/aron/scratch/build/unsupported/test
-I/home/aron/scratch/eigen/unsupported/test -I/home/aron/scratch/eigen
-I/home/aron/scratch/build
-I/home/aron/scratch/eigen/unsupported/test/../../test
-DEIGEN_TEST_FUNC=alignedvector3   -o
CMakeFiles/alignedvector3.dir/alignedvector3.cpp.o -c
/home/aron/scratch/eigen/unsupported/test/alignedvector3.cpp
"/home/aron/scratch/eigen/Eigen/src/Core/SelfAdjointView.h", line
145.79: 1540-0716 (S) The template argument "Eigen::SelfAdjointView"
does not match the template parameter "class T".


This is a clean Eigen source file, and there's no 'class T' parameter
anywhere in sight.  My suspicion was that the compiler was choking on
something upstream, so my modifications were not to that file, but to
the parameter list for TriangularBase.

We've decided that what I did was wrong, but I still need to figure
out a way to make the compiler stop choking on these files.  In the
past, I've danced around these template parameter errors by loosening
the requirement for specialization.  What I can try to do now is
ensure that the compiler is aware of the template methods/classes
being used by double-checking all of the forward declarations.

Anyway, the way the error is being reported is certainly a compiler
bug, so I will also dispatch this to the IBM Compiler folks.  It's
very possible that this is an internal compiler error.

Thanks for your attention on this Benoit.

Warm Regards,
Aron



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