Dear Torquil,
I just tried to include complex.h but it turns out that
#include<complex.h>
and
#include<complex>
are not compatible !
It seems that it is not possible to include both. And since gmm includes <complex> it
seems that this implies that it is incompatible with <complex.h>.
I don't know how you can circumvent this. May be by using some namespaces ...
Yves.
----- Original Message -----
From: "Torquil Macdonald Sørensen" <address@hidden>
To: address@hidden
Sent: Friday, October 11, 2013 5:28:40 PM
Subject: [Getfem-users] Conflict between GMM and LAPACKE
Hi!
There seems to be a conflict between GMM and LAPACKE. The following test
program does not compile with g++ 4.8.2 20131010 (prerelease):
#include "lapacke.h"
#include "gmm/gmm_matrix.h"
int main()
{
return(0);
}
The compiler output is:
********************************************************
In file included from
/mn/anatu/cma-u3/tmac/usr/stow/gcc/include/c++/4.8.2/complex.h:36:0,
from /mn/anatu/cma-u3/tmac/usr/include/lapacke.h:77,
from conflict_gmm_lapacke.cpp:1:
/mn/anatu/cma-u3/tmac/usr/include/gmm/gmm_matrix.h:67:35: error: expected ‘,’
or ‘...’ before ‘(’ token
void add(const identity_matrix &I, const M &v1)
^
In file included from conflict_gmm_lapacke.cpp:2:0:
/mn/anatu/cma-u3/tmac/usr/include/gmm/gmm_matrix.h: In function ‘void
gmm::add(const gmm::identity_matrix&)’:
/mn/anatu/cma-u3/tmac/usr/include/gmm/gmm_matrix.h:68:30: error: ‘v1’ was not
declared in this scope
{ add(I, linalg_const_cast(v1)); }
**********************************************************
If I reverse the header file order, it compiles. lapacke.h seems to include
"complex.h", which causes problems with gmm_matrix.h.
Is this a bug in GMM, LAPACKE, or neither?
Best regards
Torquil Sørensen
_______________________________________________
Getfem-users mailing list
address@hidden
https://mail.gna.org/listinfo/getfem-users