petsc-3.10.5 2019-03-28
Report Typos and Errors

# PetscReturnErrorHandler

Error handler that causes a return to the current level.

### Synopsis

    #include "petscsys.h"
    PetscErrorCode  PetscReturnErrorHandler(MPI_Comm comm,int line,const char *fun,const char *file,PetscErrorCode n,PetscErrorType p,const char *mess,void *ctx)

Not Collective

### Input Parameters

| comm | - communicator over which error occurred
| line | - the line number of the error (indicated by __LINE__)
| file | - the file in which the error was detected (indicated by __FILE__)
| mess | - an error text string, usually just printed to the screen
| n | - the generic error number
| p | - specific error number
| ctx | - error handler context

### Notes

Most users need not directly employ this routine and the other error handlers, but can instead use the simplified interface SETERRQ, which has the calling sequence

        SETERRQ(comm,number,mess)

### Notes for experienced users

This routine is good for catching errors such as zero pivots in preconditioners or breakdown of iterative methods. It is not appropriate for memory violations and similar errors.

Use PetscPushErrorHandler() to set the desired error handler. The currently available PETSc error handlers include PetscTraceBackErrorHandler(), PetscAttachDebuggerErrorHandler(), PetscAbortErrorHandler(), and PetscAbortErrorHandler()

### See Also

PetscPushErrorHandler(), PetscPopErrorHandler().

### Level

developer

### Location

src/sys/error/err.c
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages