COBOL

COBOL

COBOL

COBOL is responsible for the efficient, reliable, secure, and unseen day-to-day operations of the world's economy.

 View Only
  • 1.  AMODE 64 conflicting documentation

    Posted Tue July 06, 2021 04:36 PM
    https://www.ibm.com/docs/en/cobol-zos/6.3?topic=programs-call-statement-amode-64-support (CALL statement with AMODE 64 support)
    "In addition to existing syntax rules, the following additional rules apply in LP(64):
    1. Static and dynamic call supports calling other AMODE 64 Language Environment® conforming programs."
    https://www.ibm.com/docs/en/cobol-zos/6.3?topic=applications-dll-considerations (DLL considerations)
    "When LP(64) is specified, DLL style CALLs are generated by the COBOL compiler; the DLL and DYNAM options are ignored."

    The latter does not appear to me to be accurate.  I can specify DYNAM and NODLL and, just like with 31-bit programs, I can do a dynamic call with CALL literal.  Am I misunderstanding something?

    ------------------------------
    Frank Swarbrick
    ------------------------------


  • 2.  RE: AMODE 64 conflicting documentation

    Posted Wed March 27, 2024 12:54 PM
    Edited by Roy Bae Wed March 27, 2024 12:55 PM

    Frank, 

    Sorry, somehow I missed this discussion and now I am adding my input. I agree with you. The statement is confusing and it needs re-work for improvement. . As you observed, what IBM COBOL group wanted to achieve was smooth migration from AMODE 31 to AMODE 64; That is, if DYNAM/NODLL work for AMODE31, a user can use the same option for AMODE64 without breakage.  Under the cover, the way of call by DYNAM/NODLL in AMODE31 seems different from that in AMODE64.

    COBOL group will go over the statement again after more investigation.



    ------------------------------
    Roy Bae
    ------------------------------



  • 3.  RE: AMODE 64 conflicting documentation

    Posted Fri July 12, 2024 11:00 AM

    Hello Frank,

    I have the COBOL 6.4 doc updated ( https://www.ibm.com/docs/en/cobol-zos/6.4?topic=applications-dll-considerations ) and the misleading phrase has been changed from

    "When LP(64) is specified, DLL style CALLs are generated by the COBOL compiler; the DLL and DYNAM options are ignored."

    to

    "When LP(64) is specified, the generated AMODE 64 COBOL program will be a DLL regardless of the DLL compiler option"

    I expect the 6.3 doc will have the same change during the next doc refresh cycle. If I may guess, the misleading phrase was leftover and restriction made during the early development cycle which should have been removed later. 



    ------------------------------
    Roy Bae
    ------------------------------