Key to Compiler Directives

Descriptions for all of the Compiler directives appear alphabetically. Each description contains the following entries.

A brief description of the function of DIRECTIVE-NAME.
Syntax in the form:
                                V              |
   +-/-+ +.----.-DIRECTIVE-NAME-----------------+

The syntax of the directives is shown using diagrams called "railroad tracks", in which a directive and its parameters are shown joined by lines indicating the order in which they should be written. You read these diagrams from left-to-right. Each diagram starts with >> and ends with ><. Sometimes the track forks to show alternatives and then joins up again. The length of a track has no significance.

The loop over the parameter in the above example indicates that it can be repeated one or more times.

Parameters for directives are shown in quotation marks (" "), although you can use parentheses instead unless otherwise stated.

If a parameter is specified after a comma, but the filename is omitted, the directive must be preceded by a slash (/). Otherwise, the directive is incorrectly assumed to be a filename.

When writing the names of Compiler directives, you can use hyphens to improve their readability. A directive that contains hyphens is handled in exactly the same way as a directive that does not; for example, DPC-IN-SUBSCRIPT is the same as DPCINSUBSCRIPT.

Lists and describes valid parameter(s), if any, for the directive.
Default: Indicates the directive's default setting. If you set the DIALECT directive to a particular value, some other directives are set to a value that overrides either the default, or any value to which you have the directives. Directives that are set by DIALECT are indicated by (DIALECT ). Click the link to display the DIALECT page to check the dialect-specific setting. For more information on using the DIALECT directive to set directives, see The DIALECT Directive.
Phase: Shows the phase controlled by this directive. One of:
  • Syntax check
  • Generate
  • Both
$SET: Shows whether you can put the directive on a $SET statement in your source program; "Initial" in this entry means it is only allowed on a $SET statement before the first line of COBOL code. The directives specified by a $SET statement in the source code must not exceed column 72.
Shows if the setting of this directive changes the setting of any other directives, or if any other directives affect the setting of this directive.
There are a number of different cases, identified under this heading by the following keywords:
immediately The change specified is done immediately, as a part of the processing of this directive. This enables you to reset the value by specifying the second directive after the first. Don't do this unless you know what you are doing.
at end The change specified takes place when all the directives have been processed. This prevents you from overriding the new value.
Contains any additional information about the directive.