Fixes are available
Rational Developer for System z Fix Pack 5 (9.5.1.6) for 9.5.1.
Rational Developer for z Systems Fix Pack 7 (9.5.1.7) for 9.5.1.
Rational Developer for z Systems Fix Pack 8 (9.5.1.8) for 9.5.1.
Rational Developer for z Systems Fix Pack 9 (9.5.1.9) for 9.5.1.
Rational Developer for z Systems Fix Pack 10 (9.5.1.10) for 9.5.1.
Rational Developer for z Systems Fix Pack 11 (9.5.1.11) for 9.5.1.
Rational Developer for z Systems Fix Pack 12 (9.5.1.12) for 9.5.1.
APAR status
Closed as program error.
Error description
IBM Developer for z Systems - IDz v14.0 Rational Developer for System z - RDz v9.5.1 If you are editing a COBOL program that contains multiple macros that are processed by a PreProcessor defined for the COBOL editor that also defines the decimal point as a comma then you may get unexpected results and find this Java NullPointerException in the <client workspace>\.metadata\.log file: java.lang.NullPointerException at com.ibm.systemz.common.editor.parse.SectionedPrsStream$1. compare(SectionedPrsStream.java:932) at com.ibm.systemz.common.editor.parse.SectionedPrsStream$1. compare(SectionedPrsStream.java:1) at java.util.TreeMap.put(TreeMap.java:563) at com.ibm.systemz.common.editor.parse.SectionedPrsStream. registerSection(SectionedPrsStream.java:1296) ....... For example, Macro code in the program is: + FC; + WS: When you run the preprocessor these are replaced by: ENVIRONMENT DIVISION. CONFIGURATION SECTION. SPECIAL-NAMES. DECIMAL-POINT IS COMMA. WORKING-STORAGE SECTION. * --------------------------------------------- 01 WS-PROGRAM PIC X(08) VALUE 'CUSVSAM'. 01 WS-LITERAL-WS PIC X(48) VALUE ' WORKING STORAGE STARTS HERE'. ..... COMPUTE W-CUST-NO ROUNDED = W-CUST-NO + (5 * 100 * 0,01) The parser error on the line where the "* 0,01)" is gone but there is an error on the line that has the +FC When you hover over the error marker on the +FC it states, "Preprocessor Statement resolution contains the following error: "EJECT" expected instead of this input". Then the comma is not parsed in the following COBOL COMPUTE instruction: COMPUTE WA-TEST ROUNDED = WA-TEST + (5 * 100 * 0,01)
Local fix
If you use only 1 macro then you will not see this issue
Problem summary
The state of the "Decimal Point is Comma" is not maintained when there are multiple pre-processor statements.
Problem conclusion
The "Decimal Point is Comma" was being reset for each preprocessor statement. Code changes have been made to ensure that the state of the "Decimal Point is Comma" is maintained when multiple pre-processor statements are present. The problem listed in this APAR has been resolved with IBM Rational Developer for z Systems V9.5.1.6 Fix Pack which is available from the Recommended Fixes support download page: http://www-1.ibm.com/support/docview.wss?rs=2294&uid=swg27006335
Temporary fix
Comments
APAR Information
APAR number
PI70397
Reported component name
EXP FOR Z/OS CL
Reported component ID
5655EXP00
Reported release
950
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-10-07
Closed date
2017-11-30
Last modified date
2017-11-30
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:
18 October 2021