Predefined compilation variables

There are compilation variables that are defined automatically by the compiler. These compilation variables listed in this topic can be referenced in conditional compilation directives wherever a compilation variable is allowed.

Table 1. Predefined compilation variables
Predefined compilation variable name Description Value
IGY-ADDR Indicates whether a 32-bit or 64-bit object program is generated. 32 if the -q32 or ADDR(32) option is in effect; 64 if the -q64 or ADDR(64) option is in effect.
IGY-BINARY Indicates the endianness mode of binary data items (USAGE BINARY, USAGE COMP, and USAGE COMP-4). The value of the BINARY option used to compile the program:
  • 0 represents BINARY(NATIVE)
  • 1 represents BINARY(BE)
  • 2 represents BINARY(LE)
IGY-CICS® Indicates whether embedded CICS statements are accepted. B'1' if the CICS compiler option is in effect; B'0' otherwise.
IGY-COMPILER-VRM Indicates the version of the compiler. An integer in the format VVRRMM, where:
  • VV represents the version number.
  • RR represents the release number.
  • MM represents the modification number.

For example, compiler version 1.2.0 has an IGY-COMPILER-VRM value of 010200.

IGY-DYNAM Indicates whether programs invoked through the CALL literal statement will be loaded or deleted dynamically at run time. B'1' if the DYNAM compiler option is in effect; B'0' otherwise.
IGY-FLOAT Indicates the representation for floating point data items (USAGE COMP-1 and USAGE COMP-2). The value of the FLOAT option used to compile the program:
  • 0 represents FLOAT(NATIVE)
  • 1 represents FLOAT(BE)
  • 2 represents FLOAT(LE)
IGY-OPTIMIZE Indicates the optimization level. The optimization level that was used to compile the program: 0, 1, or 2. 0, 1, or 2 represents NOOPTIMIZE, OPTIMIZE(STD), and OPTIMIZE(FULL) respectively.
IGY-SQL Indicates whether processing of embedded SQL statements is enabled. B'1' if the SQL compiler option is in effect; B'0' otherwise.
IGY-UTF16 Indicates the endianness mode of national data items (USAGE NATIONAL). The value of the UTF16 option used to compile the program:
  • 0 represents UTF16(NATIVE)
  • 1 represents UTF16(BE)
  • 2 represents UTF16(LE)

Related references  
DEFINE  
DEFINE (COBOL for Linux® on x86 Programming Guide)