When strict checking is disabled you can pass a string variable by reference even if the length of the
string variable is not equal to the length of the formal parameter.
For example if you compile the following program and strict checking is enabled:
program p(output);
type
string16 = string[16];
string8 = string[8];
var
x : string16;
procedure print(var s : string8);
begin
writeln(s)
end;
begin
x := 'Hello';
print(x) (* Error only if strict checking is enabled *)
end.
then the compiler will report an error with the call print(x) since the length of x's string type is 16 and the
length of the formal parameter's sting type is 8 (i.e. they are not equal).
If strict checking is disabled then no errors are reported.
5.1.2.2.41 -sc* Use short-circuit evaluation
This command-line compiler option enables/disables short-circuit evaluation for the boolean operators
and and or.
Syntax: -sc[+|-]
Default: Enabled
Notes: See also use short-circuit evaluation.
5.1.2.2.42 -so Maximum stack overflow checking
This command-line compiler option enables/disables detailed stack overflow checking.
Syntax: -so[+|-]
Default: Disabled
Notes: The interpreter automatically checks for stack overflow at the beginning and end of each
procedure/function call and when large values are placed on the stack. These checks should suffice for
most purposes, however you can enable this option if you want the interpreter to check for stack overflow
before every statement is executed.
5.1.2.2.43 -Snn Set stack size in K
This command-line compiler option specifies the number of kilobytes to allocate for your program's
stack.