PM59733: RDz COBOL syntax check of EXEC SQL INCLUDE .. END-EXEC terminating period rules inconsistent.
A fix is available
Closed as program error.
If a COBOL program containing EXEC SQL INCLUDE .. END-EXEC statements is compiled with the Enterprise COBOL compiler using the DB2 CoProcessor, a terminating period is required after the END-EXEC phrase. However, if the DB2 Preprocessor is run before the COBOL compiler, the the terminating period is optional. COBOL programs using the RDz editor real-time syntax checking through version 8.0.2 had missing periods flagged. This warned users to make any necessary changes if they moved to the COBOL/DB2 CoProcesssor, but while using the Preprocessor, the RDz editor tooling was disabled because of the flagged condition. However, in RDz 8.0.3 the missing periods are no longer flagged, offering no help correcting this error for CoProcessor users. Since different users have different needs, there should be a way to accommodate both situations.
The DB2 CoProcessor and the DB2 Preprocessor have different rules regarding the period in a COBOL program following EXEC SQL INCLUDE .. END-EXEC. Flagging the missing period with a parser error disabled tooling for customers continuing to use the Preprocessor, and removing the error annotation didn't indicate the problem for customers using the Coprocessor, so their compile failed later, which is what the editor tooling is supposed to prevent. A middle-ground is needed.
A post-parsing check for this condition was added, and so the condition is always flagged with the annotation, but as it is checked after the parse stage completes, the error now does not disable the RDz editor tooling. The warning can simply be ignored by Preprocessor customers. The problem listed in this APAR has been resolved with IBM Rational Developer for System z V220.127.116.11 Fix Pack which is available from the Recommended Fixes support download page: http://www-1.ibm.com/support/docview.wss?rs=2294&uid=swg27006335
Reported component name
RATL DEV FOR SY
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
RATL DEV FOR SY
Fixed component ID
Applicable component levels