HP 3000 Manuals

Descriptions of Directives (cont.) [ Micro Focus COBOL System Reference, Volume 2 ] MPE/iX 5.0 Documentation


Micro Focus COBOL System Reference, Volume 2

Descriptions of Directives (cont.) 

STICKY-LINKAGE  

Makes parameters to the program remain linked during subsequent calls of
the program.

Syntax:.   

[]
Parameters:. integer Either 1 or 2 Default:. NOSTICKY-LINKAGE Phase:. Syntax check Environment:. DOS, Windows and OS/2 $SET:. Initial Remarks:. A program can be called via different entry-points that expect different parameters. When a Linkage Section record is used as a parameter in a called program it is linked to the corresponding data item in the calling program. This directive causes such links to remain during subsequent calls of the called program, so that the record can be accessed during subsequent calls even if they are via entry-points that do not use it as a parameter. The value of integer has the following effect: 1 The called program fills in any parameters not specified in the ENTRY...USING phrase. 2 The called program fills in any parameter not actually passed by the caller. Example:. In the calling program: CALL "ENTRY-1" USING HOURLY-RATE EMPLOYEE CALL "ENTRY-2" *> STICKY-LINKAGE"1" or "2" CALL "ENTRY-1" USING HOURLY-RATE *> STICKY-LINKAGE"2" only In the called program: ENTRY "ENTRY-1" USING HOURLY-RATE. DISPLAY HOURLY-RATE DISPLAY EMPLOYEE EXIT PROGRAM. ENTRY "ENTRY-2". DISPLAY HOURLY-RATE EXIT PROGRAM. Specifying STICKY-LINKAGE"1", both the DISPLAY HOURLY-RATE statements work correctly for the first two CALL statements, but DISPLAY EMPLOYEE causes run-time error 203 (CALL parameter not supplied (fatal)). Specifying STICKY-LINKAGE"2", the caller must be a COBOL program which, if generated, was generated with PARAMCOUNTCHECK. Then, the DISPLAY EMPLOYEE statement works correctly for the first and third calls, as well as the DISPLAY HOURLY-RATE statement in all three cases. With NOSTICKY-LINKAGE specified, the second and third calls cause run-time error 203 (CALL parameter not supplied (fatal)). See also:. PARAMCOUNTCHECK STICKY-PERFORM Specifies the behavior of PERFORM statements when a program is reentered. Syntax:.
[]
Parameters:. None Default:. NOSTICKY-PERFORM Phase:. Syntax check Environment:. All $SET:. Initial Remarks:. This directive only has an effect if your program was compiled with either PERFORM-TYPE"OSVS" or PERFORM-TYPE"RM" specified. If you specified PERFORM-TYPE"OSVS" or PERFORM-TYPE"RM" when compiling, PERFORM statements are implemented by having a storage area, or bucket, associated with each place in the program that can be the end of a PERFORM statement's range. When a PERFORM statement is executed the return address is stored in the bucket, and at the end of the PERFORM statement's range, the bucket is read to determine where control should return to, then cleared. By default, an EXIT PROGRAM statement clears these buckets, so that if the program is reentered, none of the return addresses of the previously executed PERFORM statements remain. Specifying STICKY-PERFORM stops the buckets from being cleared by an EXIT PROGRAM statement. This means that on reentry, the return addresses of all previously executed PERFORM statements remains. A STOP RUN or CANCEL statement clears the buckets regardless of the setting of this directive. See also:. PERFORM-TYPE STRUCT Makes the Compiler produce extra information so that you can use the structure feature of Animator. Syntax:.
[]
Parameters:. None Default:. NOSTRUCT Phase:. Syntax check Environment:. All $SET:. No Dependencies:. STRUCT sets ANIM at end. Set to NOSTRUCT at end by NOINT. Remarks:. 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. SUPFF Suppresses form-feed characters on the compilation listing if it is sent to the screen. Syntax:.
[]
Parameters:. None Default:. SUPFF Phase:. Syntax check Environment:. All $SET:. Any SYMBSTART Sets the number from which the Compiler counts positions in the collating sequence when compiling the SYMBOLIC CHARACTERS clause. Syntax:.
[]
Parameters:. integer The number to be used. Default:. SYMBSTART"1" Phase:. Syntax check Environment:. All $SET:. Initial Remarks:. For ANSI conformance use SYMBSTART"1"; for compatibility with previous products use SYMBSTART"0". Example:. With SYMBSTART"1", the COBOL statement: SYMBOLIC CHARACTERS BEE IS 67 declares a symbolic character BEE representing "B" since, counting from 1, "B" is the 67th character in the ASCII collating sequence. With SYMBSTART"0", BEE represents "C". SYSIN Causes ACCEPT, DISPLAY and EXHIBIT statements to be mapped onto files SYSIN and SYSOUT. Also causes the output from TRACE to be sent to the SYSOUT file. Syntax:.
[]
Parameters:. None Default:. NOSYSIN Phase:. Syntax check Environment:. All $SET:. Initial Remarks:. When SYSIN is specified, all format 1 ACCEPT statements which either have no FROM option or specify FROM SYSIN (or the mnemonic name associated with SYSIN) are transformed into READ statements, reading from a file with external name SYSIN. Similarly, all EXHIBIT statements and all format 1 DISPLAY statements which either have no UPON option or specify UPON SYSOUT are transformed into WRITE statements, writing to a file with external name SYSOUT. These files behave as though they were defined as ORGANIZATION LINE SEQUENTIAL. The text is always in ASCII regardless of the setting of the CHARSET directive. The maximum record size for SYSIN is 80 characters, and for SYSOUT 132 characters. Their names can be mapped onto physical file-names in the same way as other files with external file-names; that is, by using environment variables or the External File Mapper, Mfextmap. See also:. ACCEPT statement, DISPLAY statement, EXHIBIT statement, TRACE directive TABLESEGCROSS Makes the Compiler assume that a table defined as not crossing a segment boundary might cross a segment boundary. Syntax:.
[]
Parameters:. None Default:. NOTABLESEGCROSS Phase:. Generate Environment:. 16-bit $SET:. Initial Dependencies:. TABLESEGCROSS sets NOBOUNDOPT at end. Set to NOTABLESEGCROSS at end by BOUND or CHECK. Remarks:. TABLESEGCROSS must be specified in a program that defines a table as being smaller than 64K, but references beyond the end of the table, across a 64K segment boundary. This technique is commonly used in OSVS COBOL programs where the maximum size of a 01-level item is 32K. Specifying TABLESEGCROSS makes the code produced for your program much less efficient. For smaller and faster code you should not specify TABLESEGCROSS. See also:. BOUNDOPT TARGET Tells the Compiler whether it can generate certain instructions available only on certain microprocessors. Use of these instructions increases the speed and slightly reduces the size of the code. Syntax:.
[]
Parameters:. processor-id Identifies the processor Default:. TARGET"86" Phase:. Generate Environment:. 16-bit $SET:. Initial Remarks:. The possible values of processor-id are: 86 The code must execute on all 8086, 8088, 80186, 80286, and 80386 processors. 286 The code can include instructions available only on the 80186, 80188, 80286, and 80386 processors. 386-16 The code can include instructions available only in 16-bit mode on the 80386 processor. 386-32 As for 386-16 except, under certain circumstances, the code might include some instructions which use 32-bit registers. Note that 80386 includes Intel 80486 processors. TERMPAGE Determines whether the last page of a report file is to be padded with blank lines until it is a full page in length. Syntax:.
[]
Parameters:. None Default:. TERMPAGE Phase:. Syntax check Environment:. All $SET:. Initial Remarks:. Specifying TERMPAGE causes the last page of a report to be padded with blank lines until it is a full page in length. This directive affects any report file for which the PAGE phrase is specified in its Report Description (RD) entry. TIME Puts the time at the top of each page of the listing. Syntax:.
[]
Parameters:. None Default:. TIME Phase:. Syntax check Environment:. All $SET:. No Remarks:. This directive has no effect if NODATE is specified. See also:. DATE TRACE Turns on READY TRACE and RESET TRACE. Syntax:.
[]
Parameters:. None Default:. NOTRACE Phase:. Syntax check Environment:. All $SET:. Initial Remarks:. When TRACE is set, the READY TRACE statement turns on the trace facility at run time. With this facility on, the name of each paragraph or section heading is displayed as it is executed. RESET TRACE turns this facility off. With NOTRACE, the READY TRACE and RESET TRACE statements have no effect. TRICKLE Stops the Compiler producing optimizations which assume that the program follows the rules of ANSI Standard COBOL for PERFORM statements. Syntax:.
[]
Parameters:. None Default:. TRICKLE Phase:. Generate Environment:. 16-bit $SET:. Initial Dependencies:. Set to TRICKLE at end by PERFORM-TYPE"OSVS". If ASSUME is set, NOTRICKLE sets NOALTER at end. Remarks:. NOTRICKLE tells the Compiler that nowhere in the program could control "trickle" from one PERFORM-range into another. Such a program has structured flow of control: it contains no paragraph or section that is entered both by being PERFORMed and by control falling into it from the preceding code, and none that is at the end of the range of one PERFORM and in the middle of the range of another PERFORM. With NOTRICKLE, the Compiler can generate more efficient code for PERFORM statements. See also:. TRICKLECHECK TRICKLECHECK Returns a run-time error message if trickling occurs in a program that you want to generate with NOTRICKLE. Syntax:.
[]
Parameters:. None Default:. NOTRICKLECHECK Phase:. Generate Environment:. 16-bit $SET:. Initial Remarks:. If your program is unstructured and you specified NOTRICKLE, undefined behavior results. If you suspect that a problem is being caused by trickling, you can locate any instance of trickling by specifying TRICKLECHECK. When a program generated with TRICKLECHECK attempts to trickle, a run-time error 199 (Operating System corrupted) is returned. Information about the program name, segment number and offset within the segment is displayed. This can be related to a source code location by referring to an assembler listing, produced by specifying ASMLIST or SOURCEASM, or a listing of the offset of each paragraph, produced by specifying PARAS. See also:. TRICKLE, ASMLIST, SOURCEASM, PARAS TRUNC Specifies whether data being stored into a USAGE COMP item is to be truncated to the size given by the item's PICTURE clause or to the maximum size the item can hold. Syntax:.
[]
Parameters:. method See Default:. TRUNC"ANSI" Phase:. Syntax check Environment:. All $SET:. Initial Dependencies:. Set to TRUNC"ANSI" immediately by NORM. Set to NOTRUNC immediately by RM or RM"ANSI". Remarks:. The possible values of method are: TRUNC Truncate in decimal to the number of digits given by the PICTURE clause, on all stores into COMP items. NOTRUNC Truncate in binary to the capacity of the allocated storage, on all stores into COMP items. TRUNC"ANSI" Truncate in decimal to the number of digits given by the PICTURE clause, on non-arithmetic stores into COMP items. On arithmetic statements that cause the size error condition and that have no ON SIZE ERROR phrase, the result is undefined. TRUNCCOPY Specifies whether to truncate the names of COPY-files. Syntax:.
[]
Parameters:. integer The number of characters to truncate the name of the COPY-file to. The maximum value that can be specified is 255. Default:. NOTRUNCCOPY Phase:. Syntax check Environment:. All $SET:. Initial USE Makes the Compiler read directives from a file. Syntax:.
[]
Parameters:. file-name A full file specification. Default:. Not set Phase:. Syntax check Environment:. All $SET:. Any Remarks:. USE is synonymous with DIRECTIVES. All rules that apply to DIRECTIVES also apply to USE. See also:. DIRECTIVES VERBOSE Sends messages from the Compiler to the screen. Syntax:.
[]
Parameters:. None Default:. VERBOSE (on DOS, Windows and OS/2) NOVERBOSE (on UNIX) Phase:. Syntax check Environment:. All $SET:. No Remarks:. When VERBOSE is specified, messages concerning accepted directives and the size of code and data areas are displayed on the screen. Dependencies:. VERBOSE sets CONFIRM immediately VSC2 Specifies that words reserved in IBM VS COBOL II are to be treated as reserved words, and enables selected features for compatibility with a given level of that product. Syntax:.
[]
Parameters:. integer The level of IBM VS COBOL II to be compatible with. Default:. NOVSC2 Phase:. Syntax check Environment:. All $SET:. Initial Dependencies:. If integer &> 1, VSC2"integer" sets DBSPACE and DBCS"2" immediately. VSC2 sets ANS85 at end. Remarks:. The possible values of integer are: 1. VS COBOL II release 1.0 (Replaces the directives OLDVSC2 VSC2.) * No explicit scope delimiter is allowed in a statement without a conditional phrase (AT END, ON SIZE ERROR, etc). * The word ALSO in an EVALUATE statement can be omitted. * The CLASS and SYMBOLIC CHARACTERS clauses are not allowed. * Conditional phrases with NOT (for example NOT AT END, NOT ON SIZE ERROR) are not allowed. 2. VS COBOL II release 2.0 VS COBOL II release 3.x (when compiled with its CMPR2 directive) COBOL/370 V1R1 (when compiled with its CMPR2 directive) * The CLASS and SYMBOLIC CHARACTERS clauses are not allowed. * Conditional phrases with NOT (for example, NOT AT END, NOT ON SIZE ERROR) are not allowed. * When used with FLAG"VSC2" it provides similar functionality to VS COBOL II release 2. 3. VS COBOL II release 3.x (when compiled with its NOCMPR2 directive) a. For complete compatibility in this instance, the directive REMOVE"FUNCTION" also should be specified. However, for mainframe compatibility, you are recommended not to use FUNCTION as a user-defined word. b. When used with FLAG"VSC2" it provides similar functionality to VS COBOL II release 3. 4. Synonymous with VSC"3". When VSC2 is specified without integer, VSC2"3" is assumed. ANSI'85 status codes are used when VSC2"3" is selected. Do not use the NOANS85 directive after VSC2"3"; it turns off some of the ANSI'85 behavior turned on by VSC2"3". WARNING WARNINGS Specifies the lowest severity level of errors to report. Syntax:.
[]
Parameters:. integer 1, 2, or 3. Default:. WARNING"1" Phase:. Syntax check Environment:. All $SET:. Any Remarks:. The possible values of integer are: 1 only those of level U, S, or E. 2 only those of level U, S, E, or W. 3 all levels, that is, levels U, S, E, W, and I. With NOWARNING only those of level U or S are reported.


MPE/iX 5.0 Documentation