There are a number of default breakpoints that stop your program when particular conditions are met. You can enable/disable these while your program is running using Control > Default Breakpoints.
Stop at exit/_exit (Disabled by default)
When enabled, your program is paused as it is about to end under normal exit conditions. Your program pauses both before and after any exit handlers have been executed.
Stop at abort/fatal MPI Error (Enabled by default)
When enabled, your program is paused as it about to end after an error has been triggered. This includes MPI and non-MPI errors.
Stop on throw (C++ exceptions) (Disabled by default)
When enabled, your program is paused whenever an exception is thrown (regardless of whether or not it will be caught). Due to the nature of C++ exception handling, you may not be able to step your program properly at this point. Instead, you should play your program or use the Run to here feature.
Stop on catch (C++ exceptions) (Disabled by default)
As for Stop on throw, but triggered when your program catches a thrown exception. Again, you may have trouble stepping your program.
Stop at fork
Your program stops when your program forks (that is, calls the fork system call to create a copy of the current process). The new process is added to your existing session, and can be debugged along with the original process.
Stop at exec
When your program calls the exec system call, your program stops at the main function (or program body for Fortran) of the new executable.
Stop on CUDA kernel launch
When debugging CUDA GPU code, this pauses your program at the entry point of each kernel launch.