The /CHECK qualifier causes the compiler to generate code to test for arithmetic overflow and for array references outside array boundaries when the program executes. The format of the /CHECK qualifier is as follows: /[NO]CHECK[=({[NO]BOUNDS },...)] {[NO]OVERFLOW[=([NO]INTEGER,[NO]DECIMAL)]} {ALL } {NONE } where: BOUNDS checks array subscripts to ensure that they are within array boundaries specified by the program. OVERFLOW enables the detection of arithmetic overflow for integer and packed decimal operations. The /CHECK qualifier specifies that both OVERFLOW and BOUNDS checking are performed. The /NOCHECK qualifier specifies that no checking is performed. If you specify /CHECK=OVERFLOW, overflow checking is enabled for both integers and packed decimal numbers. Similarly, specifying /CHECK=NOOVERFLOW disables overflow checking for both types of numbers. Specifying /CHECK=NOBOUNDS means that your program is smaller and runs faster. However, no error is signaled for an array reference outside the bounds of an array. This means that the program may get a memory management or access violation error at run time. Therefore, this option should be used only for programs that have been thoroughly debugged and whose execution time is critical. The default is /CHECK = (BOUNDS, OVERFLOW).