| description | title | ms.date | f1_keywords | helpviewer_keywords | no-loc | |||||
|---|---|---|---|---|---|---|---|---|---|---|
Learn more about the runtime_checks pragma directive in Microsoft C/C++ |
runtime_checks pragma |
01/22/2021 |
|
|
|
Disables or restores the /RTC compiler option settings.
#pragma runtime_checks( "[ runtime-check-options ]",{restore|off})
You can't enable a run-time check that wasn't enabled by a compiler option. For example, if you don't specify /RTCs on the command line, specifying #pragma runtime_checks( "s", restore) won't enable stack frame verification.
The runtime_checks pragma must appear outside a function, and takes effect at the first function defined after the pragma is seen. The restore and off arguments turn options specified in the runtime_checks pragma on or off.
The runtime-check-options can be zero or more of the parameters shown in the following table.
| Parameter(s) | Type of run-time check |
|---|---|
s |
Enables stack (frame) verification. |
c |
Reports when a value is assigned to a smaller data type that results in a data loss. |
u |
Reports when a variable is used before it's defined. |
These parameters are the same ones used with the /RTC compiler option. For example:
#pragma runtime_checks( "sc", restore )Using the runtime_checks pragma with the empty string ("") is a special form of the directive:
-
When you use the
offparameter, it turns the run-time error checks listed in the table above, off. -
When you use the
restoreparameter, it resets the run-time error checks to the ones that you specified using the/RTCcompiler option.
#pragma runtime_checks( "", off )
/* runtime checks are off in this region */
#pragma runtime_checks( "", restore )