Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
28 lines (19 sloc) 1.45 KB

Terminators little-terminator

A GraphViz diagram that shows both normal and unexpected program termination flows in C++.

There are multiple ways a C++ program may terminate. These include both normal and unexpected termination.
This GraphViz diagram shows the program termination flows as defined by the standard.

Standard C++ program terminators include:

For completeness, Microsoft specific terminators:

Most of the functions have subtle contexts, conditions and effects that should be considered by checking their documentation.
The diagram does not make an explicit distinction between the C and C++ versions of some of the functions (e.g. exit()).
The orange path shows normal program termination.

The call graph

Corrections, additions, updates and layout improvements will be gladly accepted.