$S : Stack checking

The {$S+} directive tells the compiler to generate stack checking code. This generates code to check if a stack overflow occurred, i.e. to see whether the stack has grown beyond its maximally allowed size. If the stack grows beyond the maximum size, then a run-time error is generated, and the program will exit with exit code 202.

Specifying {$S-} will turn generation of stack-checking code off.

The command-line compiler switch -Ct has the same effect as the {$S+} directive.

By default, no stack checking is performed.