Skip to main content
`Ctrl`+`K`

# PetscStackPush

Pushes a new function name and line number onto the PETSc default stack that tracks where the running program is currently in the source code and verifies the memory is not corrupted.

## Synopsis

    #include <petscsys.h>
    void PetscStackPush(char *funct)

Not Collective

## Input Parameter

- funct - the function name

## Notes

In debug mode PETSc maintains a stack of the current function calls that can be used to help to quickly see where a problem has occurred, for example, when a signal is received. It is recommended to use the debugger if extensive information is needed to help debug the problem.

The default stack is a global variable called `petscstack`.

## See Also

`PetscAttachDebugger()`, `PetscStackCopy()`, `PetscStackView()`, `PetscStackPopNoCheck()`, `PetscCall()`, `PetscFunctionBegin()`, `PetscFunctionReturn()`, `PetscFunctionBeginHot()`, `PetscFunctionBeginUser()`, `PetscStackPushNoCheck()`, `PetscStackPop`

## Level

developer

## Location

include/petscerror.h

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages