Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Template error with g++ 8.0.1 #116

Closed
jamesjer opened this issue Apr 13, 2018 · 1 comment
Closed

Template error with g++ 8.0.1 #116

jamesjer opened this issue Apr 13, 2018 · 1 comment

Comments

@jamesjer
Copy link
Contributor

Attempting to build linbox 1.5.2 on an x86_64 Fedora Rawhide machine with g++ 8.0.1:

In file included from ../../linbox/matrix/densematrix/blas-matrix.h:54,
                 from ../../linbox/matrix/dense-matrix.h:79,
                 from ../../linbox/algorithms/rational-solver.h:43,
                 from ../../linbox/algorithms/diophantine-solver.h:29,
                 from diophantine-solver.C:26:
../../linbox/matrix/densematrix/blas-transposed-matrix.h:74:8: error: too many template-parameter-lists
  class TransposedBlasMatrix< TransposedBlasMatrix< Matrix > > : public Matrix {
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The code there reads:

#if !defined(__INTEL_COMPILER) && !defined(__CUDACC__) & !defined(__clang__)
	template <>
#endif
	template< class Matrix >
	class TransposedBlasMatrix< TransposedBlasMatrix< Matrix > > : public Matrix {

Apparently g++ 8.0.1 also does not want that "template <>". Removing it results in a successful build.
Also, note that the #if line contains a single ampersand where a double ampersand should be used.

yuliswe pushed a commit to yuliswe/linbox that referenced this issue Jun 5, 2018
@ClementPernet
Copy link
Member

Fixed in 56be867

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants