When intermediate code is being created by the Compiler, this directive controls the level of portability of the code created to different versions of Micro Focus COBOL systems in other environments.
Note: This Compiler directive is not intended for your use, and its setting should not be changed. It is included here for completeness, because it might appear in the list of settings.
Syntax:
>>-.---.-.-------INTLEVEL--"integer"-.-----><
+-/-+ +-----NOINTLEVEL------------+
Parameters:
-
integer
- The level of portability. Can be
2,
4, 5, 6 or 7 where:
- 2
- Base INTLEVEL support.
- 4
- Enables long numeric support, that is, PIC clauses greater than PIC 9(18).
- 5
- Reserved.
- 6
- Reserved. Enables UNICODE support.
- 7
- Reserved.
Properties:
Default:
|
INTLEVEL"2"
|
Phase:
|
Syntax check
|
$SET:
|
No
|
Dependencies:
Set to INTLEVEL"5" immediately by the Compiler directive P64.
Comments:
Full details of intermediate code portability are included with the relevant COBOL systems.
NOINTLEVEL causes intermediate code to be created that is suitable for execution only in this environment.
INTLEVEL"integer" creates intermediate code that can be executed by some versions of Micro Focus products in other environments. For portability between environments, the value of integer used for compilation must be supported by the Micro Focus COBOL system on each environment on which you want to execute the intermediate code.
INTLEVEL"integer" can limit the syntax that can be used in your program.
Use INTLEVEL"4" if you are compiling a program that is using syntax defined in the ISO2002 standard. INTLEVEL"4" is set by default if you set DIALECT"ISO2002".
If you are using the COBOL for OS/390 dialect and want to emulate the mainframe's ARITH"EXTEND" behavior (to enable the use of PIC 9 data items longer than 18 bytes, for example), you must set INTLEVEL"4".
You must explicitly set INTLEVEL"2" (and not rely on the default value) if you are creating an .int file that you want to port to COBOL for Workbench V3.4.
We recommend that you use only INTLEVEL"2" and INTLEVEL"4".