IBM Support

PI89172: RDZ 9.5.1 - PREPROCESSOR FOR PL/I SOURCE RESULTS IN UNEXPECTED ERRORS WHEN USING EXPANDED SOURCE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When using a preprocessor for PL/I source it may result in
    errors for expanded source.
    
    Example:
    
    Before running preprocessor:
    
             GET $VALUE FROM  ACCNT
                       WITH  PURGE
                       USING ACCNT_NAM;
    
    Expanded source after running processor:
    
    /*                                                       **ME**
            GET $VALUE FROM  ACCNT
                      WITH  PURGE
                      USING ACCNT_NAM;
    */                                                       /*ME*/
    CALL BNK1('@XC$$' || '0001112222333DA8F020'X,           /*ME*/
              'BOND1',                                      /*ME*/
              CHK,                                           /*ME*/
              SAVI,                                           /*ME*/
              'EXTRACT-TOTAL             ',             /*ME*/
              $VALUE                            ,             /*ME*/
    
    
    Example of error messages that may be seen:
    
    Preprocessor statement resolution contains the following error:
    "/*" is invalid.
    
    Multiple markers at this line
      - Preprocessor statement resolution contains the following
    error: "ERROR_TOKEN" unexpected tokens ignored
      - Preprocessor statement resolution contains the following
    error: "=" expected instead of this input.
    

Local fix

  • Modify the preprocessor to create a single delta for each
    preprocessor change, for example:
    
    Before running preprocessor:
    
             GET $VALUE FROM  ACCNT
                       WITH  PURGE
                       USING ACCNT_NAM;
    
    Expanded source after running processor:
    
    /*                                                       **ME**
    *        GET $VALUE FROM  ACCNT
    *                 WITH  PURGE
    *                 USING ACCNT_NAM;
    */                                                       /*ME*/
    CALL BNK1('@XC$$' || '0001112222333DA8F020'X,           /*ME*/
              'BOND1',                                      /*ME*/
              CHK,                                           /*ME*/
              SAVI,                                           /*ME*/
              'EXTRACT-TOTAL             ',             /*ME*/
              $VALUE                            ,             /*ME*/
    

Problem summary

  • RDz's PL/I Parser incorrectly parses comments in preprocessor
    diffs.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PI89172

  • Reported component name

    DEV FOR Z SYS

  • Reported component ID

    5724T0700

  • Reported release

    950

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2017-10-20

  • Closed date

    2018-01-29

  • Last modified date

    2018-01-29

  • 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

    DEV FOR Z SYS

  • Fixed component ID

    5724T0700

Applicable component levels

  • R951 PSY

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSTRMM","label":"IBM Developer for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"950","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
19 October 2021