A fix is available
APAR status
Closed as program error.
Error description
Code Analysis internal defects and enhancements
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: 01.PL/I code developers with preprocessors * * 02.PL/I code developers with preprocessors * * 03.COBOL developers using format * * 04.All * * 05.HLASM Assembler developers * * 06.Code Developers with code modified in * * Eclipse using source format * * 07.COBOL programmers using the special * * registers or debugging * * 08.COBOL programmers using the special * * registers or Java Native Interface (JNI) * * 09.COBOL developers with statements that * * span multiple lines * **************************************************************** * PROBLEM DESCRIPTION: 01.Syntax warnings in the include file * * for PL/1 with preprocessor * * statements with associate complete * * program used in the client. * * 02.Code rules results for PL/I metrics * * may have different results in Client * * and Host if the code contains * * preprocessor statements. * * 03.Format of code used in client may * * result in parser errors, which may * * affect code rules results. * * 04.An exception is seen instead of an * * error when the Code review tool * * cannot register. * * 05.NullPointerException (NPE) if an * * assembler macro is not properly * * terminated with a MEND statement. * * 06.National language characters that * * were mis-identified as being double * * or variable width in some scenarios, * * and so indention did not occur. * * 07.Code Review needs to support * * DEBUG-ITEM and its subfields as * * declared in COBOL 6.1 and higher. * * 08.Code Review needs to support * * JNIENVPTR as declared in COBOL 6.1 * * and higher. * * 09.Cobol parser needs updating to allow * * a COPY statement with REPLACING to * * span multiple lines in more * * instances. * **************************************************************** 01.If in the client a developer has used the Associate Complete Program together with an identify preprocessor statements, the parser generates incorrect syntax warnings in the include file. This may be reflected in code rules. 02.Client metrics for PL/I code and Code rules associated with those metrics may fail or be incorrect prior to Preprocessor Statement identification with Source->Preprocessor Statements ->Identify Using Configured Preprocessors. in the client, the metrics may incorrectly refresh or fail to refresh. For code review, that may result in different results between host and client. 03.The formatter is unable to correctly identify when a statement moves beyond column 72 when 2 statements are on the same line. 04.When batch CR cannot register, it is supposed to print out an error message that was constructed earlier in the code. Instead we see a java.lang.exception at com.ibm.akg.registration.RegistrationUtils.register(Registrat ionUtils.java:375) in DD ERRMSGS 05.java.lang.NullPointerException at com.ibm.dmh.scan.classify.u tils.FileTypeClassification.classifyAsm(FileTypeClassificatio n.java:51) is seen instead of error message "Expecting MEND" when there is no terminating MEND in an assebler macro. 06.When using some special single width national language characters, indenting was not always correct. This would affect code rules that relied on formatting or tested format rules. 07.Code Review did not support the special register DEBUG-ITEM nor its subfields as described in https://www.ibm.com/docs/en /cobol-zos/6.1?topic=registers-debug-item. The DEBUG-ITEM special register provides the information to a debugging declarative procedure about the conditions that caused the debugging section execution. 08.Code Review did not support the special register JNIENVPTR as described in https://www.ibm.com/docs/en/cobol-zos/6.1?topic= registers-jnienvptr. The JNIENVPTR special register references the JNI environment as a USAGE POINTER used in calling Java callable services. 09.When a COPY statement with REPLACING is broken up across multiple lines like in the following example, error "DataDescriptionEntryClause" is invalid parsing may be reported. With a COPYBOOK of 01 EXML01 SYNCHRONIZED. 03 EXAMPLE-LENGTH PIC 9(5) COMP. 03 EXAMPLE-TYPE PIC 99. and with a COBOL main source member having statements like 01 EXML01 COPY EXML01 REPLACING ==01 EXML01 == BY == ==. an incorrect error was being declared in the parsing of the main source member for the DataDescriptionEntryClause, but when the main source statement is 01 EXML01 COPY EXML01 REPLACING ==01 EXML01 == BY == ==. there was no issue.
Problem conclusion
01.The Associate Complete Program function and the Source>Prepro cessor Statements>Identify functions are not supported together by the COBOL and PL/I parsers. If you perform the Associate Complete Program action on an include file and also identify preprocessor statements in the main file, then the parser generates incorrect syntax warnings in the include file. This information has been noted as Technote 6554540 https://www.ibm.com/support/pages/node/6554540 02.The client is corrected to properly refresh when Preprocessor statements are identified. 03.The formatting of COBOL code needed to be updated to support formatting when multiple statements were on a single line. 04.Registration part was updated in the code review tool. 05.Classification analysis for HLASM code updated. 06.Formatting was improved to correctly identify and indent with the involved characters. 07.IDz adding support for the special register DEBUG-ITEM and its subfields 08.IDz adding support for the special register JNIENVPTR 09.IDz made changes to better support multiple line statements in COBOL
Temporary fix
Comments
APAR Information
APAR number
PH44794
Reported component name
SOURCE CODE ANA
Reported component ID
5724T0733
Reported release
F00
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-03-10
Closed date
2022-03-10
Last modified date
2022-04-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
AKGXCR03
Fix information
Fixed component name
SOURCE CODE ANA
Fixed component ID
5724T0733
Applicable component levels
RF00 PSY UI79668
UP22/03/11 P F203
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.
[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU029","label":"Software"},"Product":{"code":"SSQ2R2","label":"Rational Developer for System z"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"F00"}]
Document Information
Modified date:
02 April 2022