COBOL Manual for TNS and TNS/R Programs
Calling Other Programs and Routines
HP COBOL Manual for TNS and TNS/R Programs—522555-006
23-14
Operating System Routines
If an operating system routine’s formal parameter list changes from variable to
extensible, the code that was compiled to expect a variable parameter list can usually
call the new version of the routine that has an extensible parameter list (at a slight
performance penalty). For more information about variable and extensible parameter
lists, see the TAL Reference Manual (for TNS programs) or the pTAL Reference
Manual (for native programs).
Generations of Operating System Routines
Like the file COBOLEXT and NMCOBEXT, the files COBOLEX1, COBOLEX0,
NMCOBEX1, and NMCOBEX0 are part of every HP COBOL RVU. Like the file
EXTDECS, the files EXTDECS1 and EXTDECS0 are part of every operating
environment RVU. This table shows the relationship between these files.
Different generations of the same operating system routine might have different formal
parameter lists (see Extensible and Variable Parameter Lists). Because of this,
programs compiled with COBOLEX0 or NMCOBEX0 might execute only on the very
latest RVU of the operating environment, programs compiled with COBOLEX1 or
NMCOBEX1 might execute only on the two most recent RVUs of the operating
environment, and programs compiles with COBOLEXT or NMCOBEXT might execute
only on the three most recent RVUs of the operating environment.
Your system manager must verify that the appropriate file has the name COBOLEXT
or NMCOBEXT when you compile your program. Any of the files COBOLEX0,
COBOLEX1, or COBOLEXT can be named COBOLEXT. Any of the files NMCOBEX0,
NMCOBEX1, or NMCOBEXT can be named NMCOBEXT.
If you need to use a version of the COBOLEXT or NMCOBEXT file that is available on
your system under a name other than COBOLEXT or NMCOBEXT, there are two ways
to do it:
•
Create a subvolume containing the COBOL85 or NMCOBOL compiler and all the
files it needs. Install the appropriate version of COBOLEXT or NMCOBEXT in that
subvolume, under the name COBOLEXT or NMCOBEXT. Use this subvolume for
your compilations; that is, instead of using a compilation command like
COBOL85 /IN XYZ/
or
NMCOBOL /IN XYZ/
File of Operating
System Routine
Declarations
Generation of
Operating System
Routines
File of Dummy Versions of
operating system routines
COBOL85
Compiler
NMCOBOL
Compiler
EXTDECS0 Latest COBOLEX0 NMCOBEX0
EXTDECS1 Next-to-latest COBOLEX1 NMCOBEX1
EXTDECS Second-next-to-latest COBOLEXT NMCOBEXT