IBM (mainframe) and dynamic / static CALLs
From: William M. Klein (wmklein_at_nospam.netcom.com)
Date: 06/15/04
- Next message: Chuck Stevens: "Re: Is it possible to use the value of the PROGRAM ID within the source code?"
- Previous message: Chuck Stevens: "Re: Is it possible to use the value of the PROGRAM ID within the source code?"
- Next in thread: Chuck Stevens: "Re: IBM (mainframe) and dynamic / static CALLs"
- Reply: Chuck Stevens: "Re: IBM (mainframe) and dynamic / static CALLs"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Tue, 15 Jun 2004 19:27:54 GMT
Just because there may be some confusion - from another thread, the following is
true for IBM mainframes (slight variations exist for VSE and VM - so this is
*most* accurate for MVS, OS/390, and z/OS) *and* COBOL (other languages and
products may include additional variations)
1) The older (no longer available in current compilers) RES/NORES compiler
option determined whether internal calls to IBM supplied "run-time routines"
were resolved at link-edit or run-time. (Current compilers require that almost
all IBM supplied run-time support be accessed at run-time)
2) There are internal differences between the (more recent) BINDER and the
Linkage-Editor, but these *normally* have little or no impact on COBOL
programmers.
3) When the NODYNAM compiler option is specified,
CALL "literal" statements are resolved at linkage/binding time
CALL identifier statements are resolved at run-time
4) When the DYNAM compiler option is specified, all CALL statements are resolved
at run-time
5) The NCAL linkage editor statement can cause "normally" link-edit resolution
to be "skipped". Although this used to be used "medium-often" - its use (as far
as I know) has diminished in recent years. There may be other
Binder/Linkage-Editor control statements that can impact all of what I am saying
in this note.
6) IBM *clearly* documents that compiling with the NODYNAM compiler option
results in semantics that are NOT ANSI/ISO (any variation) conforming. This is
PRIMARILY due to the fact that CANCEL statements are ignored. OTOH, NODYNAM is
required for some IBM products such as CICS.
***
To the extent that these generalizations apply to other environments (IBM or
otherwise) depends entirely on the Operating System facilities, the compiler,
and the run-times.
-- Bill Klein wmklein <at> ix.netcom.com
- Next message: Chuck Stevens: "Re: Is it possible to use the value of the PROGRAM ID within the source code?"
- Previous message: Chuck Stevens: "Re: Is it possible to use the value of the PROGRAM ID within the source code?"
- Next in thread: Chuck Stevens: "Re: IBM (mainframe) and dynamic / static CALLs"
- Reply: Chuck Stevens: "Re: IBM (mainframe) and dynamic / static CALLs"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|