xref: /petsc/include/petscmatelemental.h (revision fbf9dbe564678ed6eff1806adbc4c4f01b9743f4)
1 #ifndef PETSCMATELEMENTAL_H
2 #define PETSCMATELEMENTAL_H
3 
4 #include <petscmat.h>
5 
6 #if defined(PETSC_HAVE_ELEMENTAL) && defined(__cplusplus)
7   #if defined(__clang__)
8     #pragma clang diagnostic push
9     #pragma clang diagnostic ignored "-Wunknown-warning-option"
10     #pragma clang diagnostic ignored "-Wunused-parameter"
11     #pragma clang diagnostic ignored "-Wunused-but-set-variable"
12     #pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant"
13     #pragma clang diagnostic ignored "-Wextra-semi"
14   #elif defined(__GNUC__) || defined(__GNUG__)
15     #pragma GCC diagnostic push
16     #pragma GCC diagnostic ignored "-Wunused-but-set-variable"
17     #pragma GCC diagnostic ignored "-Wunused-parameter"
18   #endif
19   #include <El.hpp>
20   #if defined(__clang__)
21     #pragma clang diagnostic pop
22   #elif defined(__GNUC__) || defined(__GNUG__)
23     #pragma GCC diagnostic pop
24   #endif
25   #if defined(PETSC_USE_COMPLEX)
26 typedef El::Complex<PetscReal> PetscElemScalar;
27   #else
28 typedef PetscScalar PetscElemScalar;
29   #endif
30 #endif
31 
32 #endif /* PETSCMATELEMENTAL_H */
33