IBM Support

PI44924: THE HIGH BIT IS NOT SET FOR THE LAST PARAMETER ADDRESS IF THAT PARAMETER IS "OMITTED"

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Cobol generates parameter lists in the same manner as the
    Assembler CALL macro when the 'VL' parameter (Varying Length
    parameter list) is used, which is to say it turns on the high
    bit (x'80000000') of the last parameter address.
    
    However, if for the last parameter on a call the keyword OMITTED
    is used, COBOL fails to set the high bit.
    
    If the callee expects a variable number of arguments and makes
    its determination of the number of arguments based on that high
    bit being set, it may attempt to process arguments beyond what
    is intended by the caller and likely receive an abend 0C4.
    

Local fix

  • The following can be used in place of a trailing OMITTED
    parameter to ensure the high bit is turned on:
    
     linkage section.
     77 private-omitted usage pointer.
     ...
         set address of private-omitted to NULL
         ...
         call "routine" using ... private-omitted.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.2 using a CALL  *
    *                 statement with the last USING parameter      *
    *                 omitted.                                     *
    *                                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: Incorrect output or ABEND at runtime.   *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION: Apply provided service.                      *
    *                                                              *
    ****************************************************************
    The compiler was not setting the high order bit for the last
    call parameter when that parameter is omitted.
    

Problem conclusion

  • The compiler was modified to set the high order bit on the last
    call parameter when that parameter is omitted.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI44924

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655W3200

  • Reported release

    520

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2015-07-14

  • Closed date

    2015-07-23

  • Last modified date

    2015-09-02

  • APAR is sysrouted FROM one or more of the following:

    PI44627

  • APAR is sysrouted TO one or more of the following:

Modules/Macros

  • IGYCCBE
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655W3200

Applicable component levels

  • R520 PSY UI29671

       UP15/08/04 P F508

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"LOB17","label":"Mainframe TPS"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 September 2015