The following options can be used to influence runtime behavior when compiling the module containing the main function. When compiling other modules These options have no effect.
-K arg1[,arg2...]
General input rules for the -K option can be found on "Calling syntax and general rules".
The following entries are possible as arg arguments to control the runtime behavior:
integer_overflowno_integer_overflow
-K integer_overflow (default)
By default, the program mask is set to X‘0C‘ in compliance with the ILCS convention.
-K no_integer_overflow
The program mask is set to X’00’.
The two program masks have the following effect:
X‘0C‘ | X‘00‘ | |
Fixed point overflow | allowed | suppressed |
Notes
The ILCS program mask may not be changed with mixed code!
The -K integer_overflow option does not affect he selection of generated commands. The result is that permitting INTEGER-OVERFLOW does not necessarily mean that an overflow is triggered in all cases.
promptingno_prompting
-K prompting (default)
If the program is called from the BS2000 environment (SDF), a prompt line is output in which parameters can be specified for the main function or for redirecting the standard I/O stream.
-K no_prompting
No prompt line is output.
This option has no effect if the program is started from the POSIX shell as the parameters are always specified in the command line in this case.
statisticsno_statistics
-K statistics (default)
The used CPU time is output when a program generated with this option is terminated. However, this only occurs when the program is transferred to BS2000 and is started there.
-K no_statistics
The used CPU time is not output.
stacksize=n
The -K stacksize option can be used to input a number n (8 to 99999) which defines the number of kilobytes to be reserved for the first segment of the C runtime stack. The default is 64 kilobytes.
environment_encoding_stdenvironment_encoding_ebcdic
These options enable the encoding of external strings, such as arguments of main and environment variables, to be controlled.
–K environment_encoding_std (default).
The external strings are encoded in the way specified in the options -K literal_encoding_ascii, -K literal_encoding_ascii_full, -K literal_encoding_ebcdic or -K literal_encoding_ebcdic_full (see "Common frontend options in C and C+").
-K literal_encoding_ebcdic_full
This option is offered for reasons of compatibility. Despite -K literal_encoding_ascii or –K literal_encoding_ascii_full being specified, external strings are encoded in EBCDIC.
The table below explains the option combinations and the encoding of the external strings:
environment_encoding_std | environment_encoding_ebcdic | |
literal_encoding_ebcdic* | EBCDIC | EBCDIC |
literal_encoding_ascii* | ASCII | EBCDIC |