xref: /petsc/include/petscmatelemental.h (revision bcd3bd92eda2d5998e2f14c4bbfb33bd936bdc3e)
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-parameter"
17     #pragma GCC diagnostic ignored "-Wunused-but-set-variable"
18     #pragma GCC diagnostic ignored "-Wextra-semi"
19   #endif
20   #include <El.hpp>
21   #if defined(__clang__)
22     #pragma clang diagnostic pop
23   #elif defined(__GNUC__) || defined(__GNUG__)
24     #pragma GCC diagnostic pop
25   #endif
26   #if defined(PETSC_USE_COMPLEX)
27 typedef El::Complex<PetscReal> PetscElemScalar;
28   #else
29 typedef PetscScalar PetscElemScalar;
30   #endif
31 #endif
32 
33 #endif /* PETSCMATELEMENTAL_H */
34