APAR status
Closed as program error.
Error description
See Problem Summary.
Local fix
na
Problem summary
APAR NUMBER: PJ40290 PRODUCT: z/TPF FUNCTIONAL AREA: MISC SHIPPED IN PUT: 9 ABSTRACT: Additional error checks should be added to notify users if certain z/TPFDF structured programming macro (SPM) constructs are incomplete PACKAGE CONTENTS: Source Segments: (C) base/macro/finis.mac Object Only Binaries: None. Configuration Independent Binaries: None. Support Files: None. OTHER BINARIES TO BUILD: NO None. COMMENTS: Additional checking should be added to check for z/TPFDF structured programming macro (SPM) application coding errors. In particular: - If a #SUBR SPM is coded following another #SUBR SPM (that is, the #ESUB SPM is missing or in the wrong place), an informational MNOTE (severity *) is generated (#SUBR SHOULD NOT BE NESTED WITHIN ANY SPM FIGURE). Because this MNOTE is informational, it can easily be missed, leading to unpredictable application behavior. This should be flagged as a higher severity MNOTE in the assembly. - If an #IF SPM is missing a corresponding #EIF SPM in an application, a "** ASMA044E Undefined symbol " error is generated. It would be helpful if a message was also generated to indicate that the problem was that an #EIF is missing. - If a #CAST or #DO SPM is missing a corresponding #ECAS or #EDO SPM, respectively, the user is not notified that the SPM structure is incomplete. As a result, the application may not behave as expected.
Problem conclusion
SOLUTION: finis.mac has been updated so that severity 4 MNOTE ("SPM NESTING STACK NOT EMPTY-#EIF,#EDO,#ECAS OR #ESUB MISSING") will be generated if any #IF, #DO, #CAST, or #SUBR SPM is not coded with a corresponding #EIF, #EDO, #ECAS, or #ESUB, respectively. Furthermore, with co-requisite z/TPFDF APAR PM67148, the existing informational MNOTE "#SUBR SHOULD NOT BE NESTED WITHIN ANY SPM FIGURE" has been changed to be a severity 4 MNOTE: "INCORRECT NESTING OF #SUBR MACRO OR MISSING #ESUB". COREQS: YES PM67148 MIGRATION CONSIDERATIONS: YES Application programming interface (API) changes: Any application that is coded with an #IF, #DO, #CAST, or #SUBR SPM that does not have a corresponding #EIF, #EDO, #ECAS, or #ESUB will now generated an MNOTE 4 "SPM NESTING STACK NOT EMPTY-#EIF,#EDO,#ECAS OR #ESUB MISSING". This means that object code may no longer be generated and any such applications will need to be updated as a result. BUILD COMMANDS AND INSTRUCTIONS: NO None. UPDATED INFORMATION UNITS: NO None. See your IBM representative if you need additional information. DOWNLOAD INSTRUCTIONS: http://www.ibm.com/software/htp/tpf/maint/maintztpf.html APAR URL: http://www.ibm.com/software/htp/tpf/ztpfmaint/put9/PJ40290.htm
Temporary fix
Comments
APAR Information
APAR number
PJ40290
Reported component name
Z/TPF
Reported component ID
5748T1501
Reported release
110
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-06-20
Closed date
2012-10-26
Last modified date
2012-11-05
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
Z/TPF
Fixed component ID
5748T1501
Applicable component levels
R110 PSY
UP
Rate this page:
Average rating
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.