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" <[email protected]> To: [email protected] 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 [email protected] https://mail.gna.org/listinfo/getfem-users _______________________________________________ Getfem-users mailing list [email protected] https://mail.gna.org/listinfo/getfem-users
