Following is a reduced test case from parsec suite that compiles with g++
and fails to compile with clang++ 3.4:

template<class T> class MATRIX_3X3;

template<class T> class DIAGONAL_MATRIX_3X3;



template<class T>

class SYMMETRIC_MATRIX_3X3

{

 public:

  void Fast_Solve_Eigenproblem(DIAGONAL_MATRIX_3X3<T>& eigenvalues,

                               MATRIX_3X3<T>& eigenvectors) const

  {

    DIAGONAL_MATRIX_3X3<double> eigenvalues_double;

    MATRIX_3X3<double> eigenvectors_double;

    eigenvalues = eigenvalues_double;

    eigenvectors = eigenvectors_double;

  }

};


The error messages I receive are:

./matrix.hpp: 11:33: error: implicit instantiation of undefined template
‘DIAGONAL_MATRIX_3X3<double>’

./matrix.hpp: 2:25: note: template is declared here

./matrix.hpp:12:24: error: implicit instantiation of undefined template
‘MATRIX_3X3<double>’

./matrix.hpp:1:25: note: template is declared here

2 errors generated


Is there something I am missing - or a way to modify this code to make it
compile with clang++?
_______________________________________________
cfe-users mailing list
cfe-users@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-users

Reply via email to