#ifndef PETSC_DM_PLEX_MMGCOMMON_H #define PETSC_DM_PLEX_MMGCOMMON_H #include #define PetscCallMMG_Private(ret, ...) \ do { \ PetscStackPushExternal(PetscStringize(__VA_ARGS__)); \ PetscErrorCode PETSC_UNUSED mmg_ierr_ = __VA_ARGS__; \ PetscStackPop; \ /* PetscCheck(mmg_ierr_ == (ret),PETSC_COMM_SELF,PETSC_ERR_LIB,"Error calling %s: error code %d",PetscStringize(__VA_ARGS__),mmg_ierr_); */ \ } while (0) // MMG sometimes returns 1, sometimes 0 when an error has occurred #define PetscCallMMG(...) PetscCallMMG_Private(MMG5_SUCCESS, __VA_ARGS__) #define PetscCallMMG_NONSTANDARD(...) PetscCallMMG_Private(1, __VA_ARGS__) #endif // PETSC_DM_PLEX_MMGCOMMON_H