IBM Support

PK77171: MAINTENANCE REFIT FROM R5 TO BRING R6 UP TO DATE

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as new function.

Error description

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: 1. Users calling macros with a literal as a  *
    *                    macro operand.                            *
    *                 2. Users of the WORKFILE option.             *
    *                 3. Users of conditional assembly.            *
    *                 4. Users of batched assemblies and very      *
    *                    large assemblies with NOWORKFILE and      *
    *                    WORKFILE option.                          *
    *                 5. Users of the TYPECHECK(REGISTER) option   *
    *                    using type checking for the FLOGR         *
    *                    instruction.                              *
    *                 6. All users.                                *
    *                 7. Users of the assembler when the ADATA     *
    *                    option has been specified.                *
    *                 8. Users using Quadword instructions in      *
    *                    DSECTS with SECTALGN(16) not specified.   *
    ****************************************************************
    * PROBLEM DESCRIPTION: 1. Possible S0C6 when passing a literal *
    *                         as a macro operand.                  *
    *                      2. When using the WORKFILE option the   *
    *                         assembler is not using the correct   *
    *                         BLKSIZE for the WORKFILE and is      *
    *                         trying to put all internal blocks in *
    *                         storage.                             *
    *                      3. ASMA074E incorrectly generated with  *
    *                         some combinations of data in a DC    *
    *                         operand.                             *
    *                      4. When using batched assemblies, the   *
    *                         assembler is not cleaning up all     *
    *                         storage between assemblies causing   *
    *                         it to sometimes run out of internal  *
    *                         storage space, plus for large        *
    *                         assemblies the assembler can         *
    *                         sometimes run out of internal        *
    *                         storage space.                       *
    *                      5. ASMA323W generated incorrectly for   *
    *                         the FLOGR instruction when           *
    *                         TYPECHECK(REGISTER) option used.     *
    *                      6. Possible creation of bad USING map   *
    *                         record, leading to bad ESDID record  *
    *                         in SYSADATA file.                    *
    *                      7. Using the ADATA option when there is *
    *                         a duplicate EQU symbol can cause a   *
    *                         null pointer, which may cause the    *
    *                         assembly to fail and leave a         *
    *                         truncated assembly listing.          *
    *                      8. ASMA500E was being generated         *
    *                         unnecessarily for Quadword alignment *
    *                         in a DSECT.                          *
    ****************************************************************
    * RECOMMENDATION: Apply the PTF provided.                      *
    ****************************************************************
    1. Possible ABEND S0C6 when passing a literal as a macro
       operand.
    2. Fixes the problem with the assembler not correctly using the
       WORKFILE when defined.  The assembler previously tried to
       define all internal blocks in storage and did not use the
       correct BLKSIZE for the WORKFILE.
    3. ASMA074E incorrectly generated with some (rare) combinations
       of data in a DC operand.  The error only occurs when the data
       begins with a 'C' or 'c', followed somewhere in the operand
       with a space and a substitution variable.
    4. Fixes a problem with the assembler not freeing up some
       storage in batched assemblies and corrects Work File counts
       between assemblies when the WORKFILE is used.
    5. Incorrect register type checking for FLOGR operands, causing
       ASMA323W to be generated when GR64 is specified for the
       registers used in the instruction.
    6. When a USING instruction refers to an externally-defined
       symbol, it sometimes led to the assembler creating an invalid
       USING map record, which in turn led to the creation of an
       invalid ESDID record in the SYSADATA file.
    7. When using the ADATA option and the source code contains a
       duplicate EQU symbol, the assembler may attempt to use a null
       pointer.  Depending on the operating system; the assembly may
       complete successfully or the assembly may fail during
       processing of the Ordinary Symbol and Literal Cross Reference
       section of the assembly listing.
    8. When QUADWORD alignment is used in a DSECT without
       SECTALGN(16) being specified ASMA500E is generated
       unnecessarily.
    

Problem conclusion

Temporary fix

Comments

  • The High Level Assembler has been modified:
    1. To correctly handle a literal.
    2. To ensure that the WORKFILE is used when required and that
       the correct BLKSIZE is used.
    3. To correctly scan operands before performing variable
       substitution to prevent the ASMA074E diagnostic from being
       incorrectly generated.
    4. To ensure that storage is freed up between batched
       assemblies, plus when an internal storage block fills up for
       an address/length pair, the length field is correctly setup
       in the new block and storage areas from a previous control
       block do not overlay storage in the new storage block.
    5. So that the OPCODE table has the correct operand length for
       the FLOGR instruction.
    6. To prevent the creation of invalid USING map records when
       USING refers to an external symbol.
    7. To correctly recognize the duplicate EQU symbol and not
       attempt to extract further information about that particular
       symbol entry.
    8. So that when Quadword alignment is used in a DSECT without
       SECTALGN(16) ASMA500E is not generated.
    ×**** PE09/04/15 FIX IN ERROR. SEE APAR PK84776  FOR DESCRIPTION
    

APAR Information

  • APAR number

    PK77171

  • Reported component name

    HLASM MVS, VM &

  • Reported component ID

    569623400

  • Reported release

    160

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2008-12-10

  • Closed date

    2009-03-25

  • Last modified date

    2009-06-16

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

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

    UK45173 UK45203 UK45216

Modules/Macros

  • ASMADOPD ASMAINFO ASMA00   ASMA1A   ASMA1G
    ASMA1K   ASMA1P   ASMA1S   ASMA1U   ASMA13   ASMA2R   ASMA22
    ASMA24   ASMA26   ASMA5UNI ASMA9Z   ASMA92   OPGEN
    

Fix information

  • Fixed component name

    HLASM MVS, VM &

  • Fixed component ID

    569623400

Applicable component levels

  • R160 PSY UK45203

       UP09/03/27 P F903

  • R360 PSY UK45173

       UP09/03/26 P 0903

  • R689 PSY UK45216

       UP09/03/26 P E421

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":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"160","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSENW6","label":"High Level Assembler and Toolkit Feature"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"160","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
16 June 2009