:orphan:
# PetscErrorType
passed to the PETSc error handling routines indicating if this is the first or a later call to the error handlers 
## Synopsis
```
typedef enum {
  PETSC_ERROR_INITIAL = 0,
  PETSC_ERROR_REPEAT  = 1,
  PETSC_ERROR_IN_CXX  = 2
} PetscErrorType;
```



## Note
`PETSC_ERROR_IN_CXX` indicates the error was detected in C++ and an exception should be generated


## Developer Note
This is currently used to decide when to print the detailed information about the run in `PetscTraceBackErrorHandler()`


## See Also
 `PetscError()`, `SETERRQ()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscerror.h.html#PetscErrorType">include/petscerror.h</A>

## Examples
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/vec/vec/tutorials/ex21.c.html">src/vec/vec/tutorials/ex21.c</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscerror.h)


[Index of all Sys routines](index.md)  
[Table of Contents for all manual pages](/manualpages/index.md)  
[Index of all manual pages](/manualpages/singleindex.md)  
