IBM Support

PI49906: 0C4 ABEND ACCESSING DYNAMIC ARRAYS RESIDING ABOVE MEMORY LOCATION 3B9ACA00 WHEN PROGRAM IS COMPILED WITH TRUNC(STD)

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When an EGL program that uses a dynamic array is compiled with
    cobol option trunc(std), the routine to calculate the dynamic
    array record address was dropping part of the address when the
    array was located above 1,000,000,000 decimal (3B9ACA00 in hex).
    This leads to an 0C4 abend when the record is accessed as the
    address is wrong.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Users that have dynamic arrays, that are also using          *
    * trunc(std) or trunc(opt) and are running with memory from    *
    * the address space above location 3B9ACA00                    *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * An 0C4 abend can happen if the program uses dynamic arrays   *
    * and was compiled with trunc(std) or trunc(opt). Users that   *
    * compiled with trunc(bin) are not affected. The problem is    *
    * that the pointer arithmetic calculation was made using a     *
    * variable defined as 9(9) comp-4, which will truncate the top *
    * digit, if the address is 1,000,000,000 or higher. This value *
    * is hex 3B9ACA00.                                             *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • The software was updated to define the variable used in the
    dynamic array pointer calculation to be 9(9) comp-5 instead. The
    usage of comp-5 forces the compiler to use all of the digits,
    without truncation.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI49906

  • Reported component name

    RATL BUS DEV

  • Reported component ID

    5724S5000

  • Reported release

    911

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2015-10-05

  • Closed date

    2016-04-05

  • Last modified date

    2016-04-05

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

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

Fix information

  • Fixed component name

    RATL BUS DEV

  • Fixed component ID

    5724S5000

Applicable component levels

  • R901 PSY

       UP

  • R911 PSY

       UP

  • R950 PSY

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSMQ79","label":"Rational Business Developer"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.1.1","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
17 October 2021