IBM Support

PH03581: INVALID SIGN DATA LEADS TO SIGN IN UNSIGNED FIELD AT OPT(1|2)

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A USAGE DISPLAY data item, such as A PIC S9(x)V9(y), is
    redefined as B PIC S9(x) and C PIC V9(y). Then a value is moved
    to B, and then eventually A is moved to D, where D has as many
    digits as B and is unsigned (e.g. PIC 9(x) or PIC ZZZZ9 when x
    = 5).  The value of D may contain the byte corresponding to the
    sign code in B.
    

Local fix

  • Compile with OPT(0)
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.2 compiling     *
    *                 programs that have a USAGE DISPLAY data      *
    *                 item                                         *
    *                 A PIC S9(x)V9(y) redefine A as B PIC S9(x)   *
    *                 and C PIC V9(y), move a value to B, and      *
    *                 then                                         *
    *                 move A to D, where D has as many digits as   *
    *                 B                                            *
    *                 and is unsigned (e.g. PIC 9(x) or PIC ZZZZ9  *
    *                 when x = 5).                                 *
    ****************************************************************
    * PROBLEM DESCRIPTION: D contains an incorrect result: the     *
    *                      byte corresponding to the sign code in  *
    *                      B will still contain a sign code.       *
    *                                                              *
    *                      This is invalid data introduced by      *
    *                      invalid COBOL code. If a sign code is   *
    *                      introduced into the middle of A using   *
    *                      a                                       *
    *                      redefine, it is incorrect to use A, as  *
    *                      A is not numeric.                       *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    ****************************************************************
    The compiler was assuming that all zone bits were x'F' (except
    for situations the compiler was already aware of, when
    ZONEDATA(NOPFD|MIG) were used). Thus, the compiler didn't
    generate code to correct the invalid data and set the sign of
    the final receiver to x'F'.
    

Problem conclusion

  • The compiler was fixed to set the sign of the final receiver to
    x'F' in the case described above, provided ZONEDATA(NOPFD|MIG)
    is specified.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH03581

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655W3200

  • Reported release

    520

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-10-03

  • Closed date

    2018-10-11

  • Last modified date

    2018-11-01

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

    PH01435

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

Modules/Macros

  • IGY8RWTU IGYCBE   IGYCCBE  IGYCCICS IGYCCSRV IGYCDGEN IGYCDIAG
    IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4 IGYCEN$5
    IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT IGYCJA$0
    IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8 IGYCJA$D
    IGYCJA$R IGYCLIBH IGYCLIBO IGYCLIBR IGYCLSTR IGYCLVL0 IGYCLVL1
    IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOSCN IGYCPGEN IGYCRCTL
    IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT  IGYCSCAN IGYCSIMD IGYCUE$0
    IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5 IGYCUE$8 IGYCUE$D
    IGYCUE$R IGYCXREF IGYECWI  IGYMSGE  IGYMSGK  IGYMSGT
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655W3200

Applicable component levels

  • R520 PSY UI59047

       UP18/10/19 P F810

  • R521 PSY UI59048

       UP18/10/20 P F810

  • R522 PSY UI59049

       UP18/10/20 P F810

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:
01 November 2018