Descriptions of Directives (cont.) [ COBOL/HP-UX Operating Guide for the Series 700 and 800 ] MPE/iX 5.0 Documentation
COBOL/HP-UX Operating Guide for the Series 700 and 800
Descriptions of Directives (cont.)
FLAGCD
When used in conjunction with the FLAG directive, FLAGCD flags any
directive settings that would cause incompatibility with the specified
dialect of COBOL.
Syntax:
Parameters:
severity A literal showing the severity to assign to flag
messages arising from conflicting directives
Default:
NOFLAGCD
Phase:
Compile
$SET:
Any
The possible values of severity are:
S Severe error
E Error
W Warning
I Informational
If you specify FLAGCD with no parameters, the messages are assigned the
severity given by the FLAGAS directive, if specified; if you have not
specified FLAGAS, they are produced as flagging messages.
FLAGQ
Makes the compiler ask, each time it gives a flagging message, whether
you want to stop compiling.
Syntax:
Parameters:
None
Default:
NOFLAGQ
Phase:
Compile
$SET:Any
FLAGSINEDIT
Specifies whether flagging messages are to be included in an error file.
Syntax:
Parameters:
None
Default:
FLAGSINEDIT
Phase:
Both
$SET:
No
This directive has no effect if NOEDITOR is specified. If EDITOR and
FLAGSINEDIT are specified, the error file produced will contain all
flagging messages produced by the compiler.
FLAGSTD
Makes the compiler produce language-level certification flags when it
finds syntax that is not part of a specified level of the ANSI'85
Standard.
Syntax:
Parameters:
String As shown
Default:
NOFLAGSTD
Phase:
Compile
$SET:
Initial The parameters can appear in any order but must be separated by
at least one space. The possible values of string are:
C1 Excludes flagging of communications optional module level 1
C2 Excludes flagging of communications optional module level 2
D1 Excludes flagging of debug optional module level 1
D2 Excludes flagging of debug optional module level 2
H Flags all items beyond ANSI'85 defined High COBOL subset
I Flags all items beyond ANSI'85 defined Intermediate COBOL subset
M Flags all items beyond ANSI'85 defined Minimum COBOL subset
O Includes flagging of all obsolete language elements
R Excludes flagging of report writer optional module
S1 Excludes flagging of segmentation optional module level 1
S2 Excludes flagging of segmentation optional module level 2
FLAG and FLAGSTD provide similar functionality and thus only one may be
used.
The ANS85 directive must be on.
FLAG-CHIP
This directive is reserved for future use on other environments. Do not
change its setting.
Syntax:
Parameters:
None
Default:
NOFLAG-CHIP
Phase:
Compile
$SET:
Any
Causes the compiler to generate special flagging errors for potential
problem areas for the chip architecture given by the CHIP directive.
FOLDCOPYNAME
Determines whether COPY-file names should be converted to upper case or
lower case.
Syntax:
Parameters:
case "UPPER" or "LOWER"
Default:
NOFOLDCOPYNAME
Phase:
Compile
$SET:
Initial
FOLDCOPYNAME without a parameter is equivalent to FOLDCOPYNAME "UPPER".
Specifying FOLDCOPYNAME "UPPER" converts COPY-file names to upper case
(also known as folding to upper case). Similarly, specifying
FOLDCOPYNAME "LOWER" converts COPY-file names to lower case.
FORM
Specifies the number of lines on each page of the listing.
Syntax:
Parameters:
integer Must be greater than 3
Default:
FORM "60"
Phase:
Compile
$SET:
Any
With FORM, a form-feed character is always produced at the head of the
listing file. With NOFORM, no form-feed characters or page headings are
produced anywhere in the listing.
FP-ROUNDING
Determines whether one floating-point receiving item can affect the
results of other, nonfloating-point receiving items.
Syntax:
Parameters:
dialect Must be VSC2 or OSVS
Default:
NOFP-ROUNDING
Phase:
Compile
$SET:
Any
In VS COBOL II, if any receiving data item is defined as floating point,
rounding takes place for all receiving data items, regardless of whether
they are floating point or not. For example, if two data items were
defined as:
05 numeric-field PIC 999.
05 floating-field COMP-1.
and the following statement was executed:
COMPUTE numeric-field floating-field = 7.7 + 1
specifying FP-ROUNDING "VSC2" would result in numeric-field containing 9
(rounded) whereas specifying NOFP-ROUNDING or FP-ROUNDING "OSVS" would
result in numeric-field containing 8 (truncated).
HIDEMESSAGE
HIDE-MESSAGE
Registers the number of a compiler error message to "hide" so that if the
error is encountered it is ignored.
Syntax:
Parameters:
integer The number of the compiler error message to hide
Default:
NOHIDEMESSAGE
Phase:
Compile
$SET:
Any
HIDEMESSAGE"integer" will add integer to a list of up to 20 compiler
error message numbers. To hide several error message numbers using this
feature, you must use the HIDEMESSAGE directive repeatedly.
When the program is being compiled, any message with its number in the
list will not be shown in any listing. It will not be included in the
error summary at the end of the compilation. All levels of error are
affected by this directive.
NOHIDEMESSAGE will clear the list of numbers so no messages are hidden.
HOST-NUMCOMPARE
Controls the operation of comparisons between integer numeric data items
of USAGE DISPLAY and alphanumeric literals or figurative constants.
Syntax:
Parameters:
None
Default:
NOHOST-NUMCOMPARE
Phase:
Compile
$SET:
Any
If the ZWB directive is also specified, HOST-NUMCOMPARE only affects
comparisons involving unsigned numeric data items. If NOZWB is
specified, HOST-NUMCOMPARE will affect comparisons involving both signed
and unsigned data items.
If HOST-NUMCOMPARE is specified, affected comparisons are treated as if
the numeric data item were redefined as an alphanumeric item of the same
length, and the comparison made against this redefinition. If
NOHOST-NUMCOMPARE is specified, the numeric field is first moved to an
elementary alphanumeric data item of the same size, and the content of
this alphanumeric item is then compared to the literal.
The HOST-NUMCOMPARE directive only affects comparisons where the numeric
data item contains non-numeric data at the time of the comparison.
IBM-MS
Specifies that words reserved in IBM COBOL 1.00 are to be regarded as
reserved words, and changes the behavior of certain features to be
compatible with that product.
Syntax:
Parameters:
None
Default:
NOIBM-MS
Phase:
Compile
$SET:
Initial
This directive is synonymous with the PC1 and MS"1" directives.
IBMCOMP
Turns on word-storage mode.
Syntax:
Parameters:
None
Default:
NOIBMCOMP
Phase:
Compile
$SET:
Initial
In word-storage mode every data item of USAGE COMP occupies either two
bytes or a multiple of four bytes. If you specify IBMCOMP and you use
the SYNCHRONIZED clause on any items of USAGE COMP in your program, do
not specify ALIGN"1".
When you query a data item in hexadecimal format that has a slack byte
that was generated by the IBMCOMP directive during compilation, Animator
displays the slack byte, allowing you to change it. However, the
contents of this slack byte do not affect the decimal display.
IDXFORMAT
Specifies the format to use when creating indexed files.
Syntax:
Parameters:
integer Must be between 0 and 6
Default:
IDXFORMAT "0"
Phase:
Compile
$SET:
Any The possible values of integer are:
0 System specific default (for this COBOL system,
same as 3)
1 C-ISAM format
2 Micro Focus Level II format
3 The format used by this COBOL system
4 An optimized form of the format used by this
system, for fast duplicate key handling
5 Btrieve format files (with ANSI conformance
emulations)
6 Btrieve format files (without ANSI conformance
emulations).
Existing files in any of the given formats will be processed correctly
without the need for this directive. This directive controls the format
used when creating new files.
Specifying 3 always causes the format used by this system to be created.
If, however, you specify 0, and you are using your program with a file
handler from a different system, the default for that system will be
created.
Specifying 4 may make the files larger than their IDXFORMAT"3"
equivalents.
Micro Focus Level II format files are compatible with Micro Focus
products such as Level II COBOL.
You must not use the ANS85 directive to enable ANSI'85 behavior when
using IDXFORMAT"2". However, you may use ANS85"SYNTAX" to enable ANSI'85
syntax.
INFORETURN
Specifies the return-code value returned by the compiler when it produces
only informational messages.
Syntax:
Parameters:
integer Must be between 0 and 4
Default:
INFORETURN "0"
Phase:
Compile
$SET:
Any
When the compiler terminates it returns a value that can be tested by an
operating system command to determine the success or otherwise of the
compile. The values for termination are described in Chapter 3 ,
Compiling. This directive allows you to set the value to be returned if
the compiler puts out only informational messages.
INITCALL
Specifies modules to be executed.
Syntax:
Parameters:
module The module to be called
priority The priority to assign to the execution of the
module
Default:
NOINITCALL
Phase:
Compile
$SET:
Initial
The possible values of priority are:
H High priority (The default if no priority is
specified)
L Low priority
If you specify INITCALL, the compiler inserts a call to the named module.
At run time, the module specified will be called before any procedural
code is executed. You cannot pass parameters to the called module.
To call several modules using this feature, you must use the INITCALL
directive repeatedly. NOINITCALL will clear the list of modules to be
called.
Calls specified with a high priority are placed before all calls with a
low priority, as well as other calls made by the compiler. Low priority
calls are placed after other calls made by the compiler. Calls with the
same priority are executed in the order they are specified.
INT
Specifies the name of the intermediate code file.
Syntax:
Parameters:
file-name A full file specification
Default:
INT "source-name.int"
Phase:
Compile
$SET:
No
This directive is reserved for use with add-on products supplied by Micro
Focus. Do not change its setting unless you have an appropriate add-on
product.
If you specify an existing file, it is overwritten.
If no file-name is specified, the compiler uses the source file-name with
the extension .int attached.
NOINT prevents the intermediate code file being produced.
INT() causes intermediate code to be put in the standard file prog-
name.int. Note that with this parameter you must use parentheses, not
quotation marks.
Use the INT directive with caution. Incorrect use may abort the
compilation process.
INTLEVEL
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 products in other environments.
Syntax:
Parameters:
integer Specifies the level of portability
Default:
INTLEVEL "2"
Phase:
Compile
$SET:
No
This directive is reserved for use with add-on products supplied by Micro
Focus. Do not change its setting unless you have the add-on products.
Full details of intermediate code portability are included with the
relevant Micro Focus add-on products.
NOINTLEVEL causes intermediate code to be created that is suitable for
execution only in this environment.
INTLEVEL"integer" will create 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 product on each
environment on which you wish to execute the intermediate code.
INTLEVEL"integer" may limit the syntax that can be used in your program.
MPE/iX 5.0 Documentation