HP 3000 Manuals

Directives for Compiler/Generator (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

Directives for Compiler/Generator (cont.) 

JAPANESE 

Enables the use of the Micro Focus Japanese language extension (PIC N,
Japanese data-names and Japanese procedure-names).

Syntax: 

[]
Parameters: None Default: NOJAPANESE Phase: Compile $SET: Initial KEYCOMPRESS Specifies the type of key compression to be done on indexed files. Syntax:
[]
Parameters: integer Must be between 1 and 7 Default: NOKEYCOMPRESS Phase: Compile $SET: Any The possible values of integer are: 1 Suppress repetitions of duplicate keys 2 Suppress leading characters that are the same as in the previous key 4 Suppress trailing spaces. You can specify any combination of these numbers by adding these values together. You need specify key compression only when creating the file. Subsequently, the key compression will be detected when the file is opened. To get key compression on an individual file, use $SET statements in your source so that this directive is in effect only for the part of the source containing the relevant KEY clause in the file's SELECT statement. LIBRARIAN Allows -INC statements in your program. Syntax:
[]
Parameters: None Default: NOLIBRARIAN Phase: Compile $SET: Any The -INC statement specifies a file for inclusion in the source program. The string -INC must be written as a contiguous sequence of characters starting in column 1, followed by one or more spaces, and then, on the same line, by the name of a file containing COBOL source. This file will be included in the program at the point where the -INC statement appears. LINKCHECK Specifies that each time a Linkage Section item is referenced a check is to be made that it exists. Syntax:
[]
Parameters: None Default: NOLINKCHECK Phase: Generate $SET: Initial If reference is made to a Linkage Section item that does not exist, a run-time error 203 (CALL parameter not supplied) is generated. LIST Specifies the destination of the source listing file. Syntax:
[]
Parameters: destination A full file specification or a device-name Default: NOLIST Phase: Compile $SET: Any (for LIST or NOLIST) None (for LIST "file-name") If you specify an existing file, it is overwritten. When NOLIST is specified, no source listing is produced. If you specify LIST with no destination, the source listing is sent to the screen. If you specify either destination or (), you can not use this directive in a $SET statement. The device-name can be any suitable device that is not under the control of a system spooler. NOLIST and LIST with no parameter may be used in $SET statements within a program to list selected parts of the program. The destination of the listing cannot be changed in this way. LIST() causes the source listing to be put in the file source-file- name.lst, where source-file-name is the root of the name of the program being compiled. Note that with this parameter you must use parentheses not quotation marks. LISTWIDTH LW Sets the width of the listing. Syntax:
[]
Parameters: integer Width in characters. It must be between 80 and 132 Default: LISTWIDTH "80" Phase: Compile $SET: Any LW"132" causes additional information to be displayed for each line listed. This includes the first eight characters of the current COPY-file name (spaces for the main file) together with the number of the line relative to the start of that file. If you use the REF directive with the LISTWIDTH directive, the REF directive takes priority over LISTWIDTH if the information to be included in the comment columns exceeds the setting of the LISTWIDTH directive. LITVAL-SIZE Specifies the number of bytes to pass if the SIZE clause is omitted when passing numeric literals BY VALUE. Syntax:
[]
Parameters: integer A number up to 4. The number of bytes to pass Default: LITVAL-SIZE "4" Phase: Compile $SET: Any LNKALIGN Specifies that any linkage records specified in a USING statement are 01 or 77-level items. That is, they are aligned according to the ALIGN directive. Syntax:
[]
Parameters: None Default: NOLNKALIGN Phase: Generate $SET: None This option can reduce the time needed to access a linkage item, but we advise that you take care when using it. You must use the correct ALIGN directive setting when compiling your program. No checks are made to ensure that the items are aligned. Note that the results of using this directive are machine-dependent, and you should not use it if you are in any doubt as to its use. Unpredictable results may occur if you pass linkage items that are not aligned. LOCKTYPE Specifies the type of record locking. Syntax:
[]
Parameters: integer 0 or 1. The type of locking Default: LOCKTYPE "0" Phase: Compile $SET: Initial The possible values of integer are: 0 Programs can read locked records, but not access them in other ways. This is the Micro Focus standard method. 1 Programs cannot access locked records at all. This is as in languages other than COBOL. 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. This directive only has an effect if the CALLFH directive is used. LOGICOPT Specifies whether to optimize COBOL logical calls so that they do not affect the value of RETURN-CODE. Syntax:
[]
Parameters: None Default: NOLOGICOPT Phase: Generate $SET: None Specifying LOGICOPT optimizes COBOL logical calls, such as CBL_AND, so that they do not affect RETURN-CODE. MAKESYN Makes one reserved word synonymous with another. Syntax:
[]
Parameters: rsv-word-1 A reserved word rsv-word-2 The reserved word whose meaning is to be changed Default: No reserved word synonyms are created Phase: Compile $SET: Initial The equals sign (=) must be surrounded by spaces. MAPNAME Makes the compiler alter program-names and entry-points to make them compatible with OS/VS COBOL, DOS/VS COBOL, VS COBOL II and COBOL/370. Syntax:
[]
Parameters: None Default: NOMAPNAME Phase: Compile $SET: Initial Specifying MAPNAME affects program-names and entry-points defined in the compilation and those referenced by the program as follows: * ENTRY statements only in the outermost program * CALL literal, but not CALL identifier, statements * PROGRAM-ID entries in the outermost program, but not in nested programs. When a name is found to be incompatible, a warning message is given and a modified name is used in the object program. The rules enforced and the modifications made are: * the first eight characters must be unique among program-names. The name is truncated to the first eight characters. * the first character must be alphabetic. If it is numeric it is changed as follows: 0 becomes J 1 through become A through 9 I Hyphen (-) is not allowed. If one appears, it is changed to zero (0). MFCOMMENT Prevents lines with an asterisk (*) in column 1, or a form-feed character in columns 1 and 2 followed by an asterisk, appearing in the source listing. Syntax:
[]
Parameters: None Default: MFCOMMENT Phase: Compile $SET: Any With MFCOMMENT, such lines are ignored by the compiler and do not appear in the source listing. With NOMFCOMMENT, they do appear. MFLEVEL MF Facilitates forward compatibility with Micro Focus products by selectively enabling Micro Focus-specific reserved words and changing the behavior of certain features to be compatible with particular versions. Syntax:
[]
Parameters: integer The level of Micro Focus COBOL with which to be compatible Default: MF "8" Phase: Compile $SET: Initial The possible values of integer are: 1 Professional COBOL v1.0, v1.1, and v1.2 Level II COBOL v2.5 and v2.6 Level II COBOL/ET v1.1 2 VS COBOL Workbench v1.2 VS COBOL v.1.2 3 VS COBOL Workbench v1.3 VS COBOL Workbench v2.0 Professional COBOL v2.0 VS COBOL v1.5 4 COBOL/2 v1.1 Professional COBOL/2 COBOL/2 Workbench v2.2 5 COBOL /2 v1.2 COBOL/2 Workbench v2.3 6 COBOL/2 v2.4 COBOL/2 Workbench v2.4 7 COBOL/2 v2.5 COBOL/2 Workbench v2.5 8 COBOL v3.0 COBOL Workbench v3.0 Behavior of the BLANK LINE phrase in previous versions of this product can be implemented using the OLDBLANKLINE directive. Behavior of the NEXT SENTENCE phrase in previous versions of this product can be implemented using the OLDNEXTSENTENCE directive. If you specify MF without the parameter, all Micro Focus specific reserved words are treated as reserved words. It is equivalent to specifying MF"8". If you specify NOMF, none of the Micro Focus reserved words are treated as reserved words. MFSCCS This directive is reserved for use on other environments. Do not change its setting. Syntax:
[]
Parameters: None Default: NOMFSCCS Phase: Compile $SET: Initial MS Facilitates forward compatibility with Microsoft products by selectively enabling Microsoft-specific reserved words and changing the behavior of certain features to be compatible with particular versions. Syntax:
[]
Parameters: version Must be 1 or 2. The version Default: NOMS Phase: Compile $SET: Initial The possible values of version are: 1 Microsoft COBOL Version 1. 2 Microsoft COBOL Version 2. Specifying MS with no parameters is the same as specifying MS"2". MS"1" is identical to IBM-MS and PC1. For compatibility with Microsoft COBOL Version 3.x use NOMS MF"4". NATIVE Specifies the default collating sequence for comparisons. Syntax:
[]
Parameters: coll-seq Either "ASCII" or "EBCDIC" Default: NATIVE "ASCII" Phase: Compile $SET: Initial For more details, see the rules for PROGRAM COLLATING SEQUENCE in your Language Reference. The ordering of keys in an indexed file is not affected by this directive. NESTCALL Allows nested programs to appear in your program. Syntax:
[]
Parameters: None Default: NONESTCALL Phase: Compile $SET: Initial NLS Enables the National Language Support facility. Syntax:
[]
Parameters: None Default: NONLS Phase: Compile $SET: No This directive is available only on NLS environments. NLS enables your program to adapt itself automatically at run time to the character set, currency symbol and editing symbols appropriate to your user's country. For details on this facility, see Chapter 30 , National Language Support. ODOSLIDE Makes data items that follow a variable-length table in the same record move as its length changes. Syntax:
[]
Parameters: None Default: NOODOSLIDE Phase: Compile $SET: Initial This affects data items that appear after a variable-length table in the same record; that is, after an item with an OCCURS DEPENDING clause, but not subordinate to it. With ODOSLIDE, these items always immediately follow the table, whatever its current size; this means their addresses change as its size changes. With NOODOSLIDE, these items have fixed addresses, and begin after the end of the space allocated for the table at its maximum length. OLDBLANKLINE Changes the behavior of the BLANK LINE clause. Syntax:
[]
Parameters: None Default: NOOLDBLANKLINE Phase: Compile $SET: Any When OLDBLANKLINE is specified, the BLANK LINE clause behaves exactly the same as BLANKEOL; that is, all characters to the right of the cursor are deleted. With NOOLDBLANKLINE specified, the BLANK LINE clause causes the whole line to be deleted. OLDCOPY Makes COPY statements follow the ANSI'68 Standard. Syntax:
[]
Parameters: None Default: NOOLDCOPY Phase: Compile $SET: Any OLDFILEIO This directive is for internal use by the system. Do not change its setting. Syntax:
[]
Parameters: None Default: NOOLDFILEIO Phase: Compile $SET: Initial OLDINDEX Causes indexes to be compiled as subscripts. Syntax:
[]
Parameters: None Default: NOOLDINDEX Phase: Compile $SET: Initial This directive is for compatibility with earlier products. OLDNEXTSENTENCE Changes the behavior of the NEXT SENTENCE statement. Syntax:
[]
Parameters: None Default: NOOLDNEXTSENTENCE Phase: Compile $SET: Any When OLDNEXTSENTENCE is specified, the NEXT SENTENCE statement behaves like a CONTINUE statement. See your Language Reference for details of these statements. OLDREADINTO Changes the behavior of the READ ... INTO statement. Syntax:
[]
Parameters: None Default: NOOLDREADINTO Phase: Compile $SET: Any When OLDREADINTO is specified, the IMPLICIT move from the file's record area to the data item specified in the INTO phrase is executed even when the READ is not successful. If NOOLDREADINTO is specified, the MOVE only happens if the READ is successful. OPTIONAL-FILE Makes the compiler treat all files opened for I-O or EXTEND as optional. Syntax:
[]
Parameters: None Default: OPTIONAL-FILE Phase:Compile $SET: Initial Under ANSI'85 Standard COBOL, a file is treated as optional only if it has the OPTIONAL phrase in its SELECT statement. For compatibility with the ANSI'85 Standard you must specify the NOOPTIONAL-FILE directive. OSEXT Tells the compiler what extension to expect by default on the names of source files. Syntax:
[]
Parameters: ext The extension Default: OSEXT "cbl" Phase: Compile $SET: Any The extension is added if the source file-name used in the command or prompt does not have an extension or a trailing period. This happens only if the directive is specified in cobol.dir. See also the description of the COPYEXT directive. OSVS Specifies that words reserved in IBM OS/VS COBOL are to be treated as reserved words. Syntax:
[]
Parameters: None Default: NOOSVS Phase: Compile $SET: Initial Specifying OSVS sets NODOSVS. If you wish to use reference modification within the condition of a conditional statement, you must set NOOSVS when you compile your source code under the Micro Focus COBOL system. OVERRIDE Replaces a reserved word by a new one. Syntax:
[]
Parameters: rsv-word Existing reserved word user-word Any COBOL word not the same as an existing reserved word Default: No change of reserved words takes place Phase: Compile $SET: Initial This directive equates an existing reserved word to the specified user-defined word, so that, in the program, user-word will be treated as a reserved word, and rsv-word will be treated as a user-defined word. The equals sign must be surrounded by spaces. If the parameters are repeated they must be separated by spaces. PANVALET Allows ++INCLUDE statements in your program. Syntax:
[]
Parameters: None Default: NOPANVALET Phase: Compile $SET: Any The ++INCLUDE statement specifies a file for inclusion in the source program. The string ++INCLUDE must be written as a contiguous sequence of characters starting in area-A or area-B, followed by one or more spaces, and then, on the same line, by the name of a file containing COBOL source. This file will be included in the program at the point where the ++INCLUDE statement appears. If you specify PANVALET and LIBRARIAN together, a warning message is given advising that the compiled program may not be mainframe-compatible. PC1 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: NOPC1 Phase: Compile $SET: Initial This directive is synonymous with the IBM-MS and MS"1" directives. PERFORM-TYPE Specifies the behavior of return jumps from nested PERFORM statements. Syntax:
[]
Parameters: dialect MF, OSVS, or RM Default: PERFORM-TYPE "MF" Phase: Compile $SET: Initial The possible values of dialect are: MF Only the exit point of the innermost PERFORM currently being executed will be recognized and its return jump taken OSVS The exit point of any PERFORM statement currently being executed will be recognized if reached; the return jump taken is the first reached. PERFORM statements with the same exit point can be nested to a depth of two (one inner and one outer). If they are nested deeper, they will not return correctly. The end of a section is regarded as the same point as the end of its last paragraph This behavior is compatible with the mainframe behavior of OS/VS COBOL, DOS/VS COBOL, VS COBOL II and COBOL/370 RM The exit point of any PERFORM statement currently being executed will be recognized if reached; the return jump taken is the first reached. PERFORM statements with the same exit point cannot be nested; if they are they will not return correctly. The end of a section is regarded as a separate point from the end of its last paragraph. See also the description of the STICKY-PERFORM directive. PREPROCESS Makes the compiler take the source program from a preprocessor instead of a source file. Syntax:
[]
Parameters: name The preprocessor to use drctv Directives to be passed directly to the preprocessor Default: NOPREPROCESS Phase: Compile $SET: No This directive informs the compiler that an integrated preprocessor is to be used. See Chapter 29 , Integrated Preprocessor or the documentation supplied with the relevant add-on product for details of its use. PRINT Specifies the destination of the source listing file. Syntax:
[]
Parameters: destination A full file specification, or a device-name. Default: NOPRINT Phase: Compile $SET: Any PRINT is synonymous with LIST. All rules that apply to LIST also apply to PRINT. PRINT-EXT Specifies the extension to be added to the file-name associated with the ASSIGN TO PRINTER clause. Syntax:
[]
Parameters: extension The extension to be added Default: No extension is added Phase: Compile $SET: Any This directive is ignored unless ASSIGN-PRINTER() is specified with no file-name. See also the ASSIGN-PRINTER directive.


MPE/iX 5.0 Documentation