PETSc version 3.17.5
Fix/Edit manual page

PetscCallThrow

Checks error code, if non-zero it calls the C++ error handler which throws an exception

Synopsis

#include <petscerror.h>
void PetscCallThrow(PetscErrorCode ierr)
Not Collective

Input Parameter

ierr - nonzero error code, see the list of standard error codes in include/petscerror.h

Notes

Requires PETSc to be configured with clanguage = c++. Throws a std::runtime_error() on error.

Once the error handler throws the exception you can use PetscCallVoid() which returns without an error code (bad idea since the error is ignored) or PetscCallAbort() to have MPI_Abort() called immediately.

See Also

SETERRQ(), PetscCall(), SETERRABORT(), PetscCallAbort(), PetscTraceBackErrorHandler(),
PetscPushErrorHandler(), PetscError(), CHKMEMQ

Level

beginner

Location

src/sys/error/../../../include/petscerror.h
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages