A fix is available
APAR status
Closed as program error.
Error description
Customer is using the following JCL to link their program //IEWLNC EXEC PGM=IEWL, // PARM=('MAP,XREF,LIST=ALL,DYNAM(DLL),REUS=RENT') //SYSPRINT DD SYSOUT=* //SYSDEFSD DD SYSOUT=* //SYSLIB DD DISP=SHR,DSN=IMPP.RESLIB //IEFLOAD DD DISP=SHR,DSN=S00COI0.CGN.CEHBPLD1 //CMNLOAD DD DISP=SHR,DSN=DCVKR0P.CMNP.PROD.LOD //SYSLMOD DD DISP=SHR,DSN=S00COI0.CGN.LOAD //SYSLIN DD * INCLUDE CMNLOAD(CGNCDYN) REPLACE DFSLI000 REPLACE ASMTDLI(CGNCDYN),CBLTDLI(CGNCDYN) INCLUDE IEFLOAD(TIRORUNI) // DD DISP=SHR,DSN=S00COI0.CGN.CEHBSIDE(TIRORUNI) // DD * ENTRY CEESTART NAME TIRORUNI(R) Using the REPLACE statement as above results in binder abend 0F4 S0F4 RSN=83EE5E0E along with the Following message IEW2900T E913 BINDER ABNORMAL TERMINATION 5E0E2900 In reviewing IEWTRACE, the CHANGE error with ECODE A302A200 (NCHG_DUPLICATE_NAME) precedes the abend as shown below 00035296 NCHG A300A002 (12:41:39.172525) 00035297 NCHG A302A200 (12:41:39.172527) CBLTDLI CGNCDYN 00035298 NCHG A30FA102 (12:41:39.172527) A302A200 00000008 0000022D X 00035299 EREN 5E0E2900 (12:41:39.172528)
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: User's of the binder, binding modules which * * contain part definitions, attempting to use * * a CHANGE or REPLACE control statement to * * rename a part definition to another name * * when that other name already exists. Note * * that this can unintentionally happen when * * changing the name of a label definition * * (external entry / function) symbol name, * * where there happens to be identically named * * binder part definitions. * **************************************************************** * PROBLEM DESCRIPTION: The binder is instructed to change the * * part defintion name to another name * * which already exists. It then * * terminates with a binder abend with * * ECODE 5E0E2900, which means that CHANGE * * processing encountered an error. * **************************************************************** * RECOMMENDATION: * **************************************************************** Binder parts definitions are members of a merge class, which means that like named symbols are combined as one (using the longest length, strictest alignment). The binder rules which disallow duplicates of other types of symbols do not apply. Ordinarily part definitions are introduced by INCLUDEd modules (whether object or program) and this problem is not seen. This problem only surfaces when attempting to change part names using CHANGE processing. The problem can occur when given a binder control statement of following form, where both old-name and new-name are label definition (external entry / function) symbol names. Note that this could be either CHANGE or REPLACE in this case: REPLACE old-name(new-name) There may also be part definition names with the same names as these label defintions (this is allowed as binder parts have a namespac which is distinct from other symbols). In this case the binder first deletes the new-name entry (if it exists) and then CHANGEs the old-name to the new-name name. However delete processing does not remove part definitions (because they may have needed text or adcons), and thus during the CHANGE processing the duplicate symbol is detected, resulting in the binder ABEND. Once the binder ABEND is eliminated, and the new-name label definition already exits, the binder will issue the following message. CHANGE processing is still carried out as requested: MSGIEW2397W A REQUEST TO CHANGE OR REPLACE LABEL old-name TO new-name WAS RECEIVED, AND new-name WAS AN EXISTING LABEL. This problem can occur anytime the part definition already exists. It need not have been introduced by CHANGE or REPLACE. Thus a single CHANGE or REPLACE statement can also expose the problem. This problem may also occur when rebinding a module where the binder has generated parts which are DLL descriptors for use with Language Environment Dynamic Link Libraries. These parts are given the same names as the function (label definition symbol) names to which they refer. Such descriptors are rebuilt by the binder on each bind. The user need not have explicitly defined these binder-built part definition names.
Problem conclusion
The binder will follow the rules for part definitions during CHANGE and REPLACE processing. These rules allow for multiple definitions of a part definition name, because those definitions are merged.
Temporary fix
Comments
APAR Information
APAR number
OA47642
Reported component name
PROGRAM MANAGEM
Reported component ID
5695PMB01
Reported release
790
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2015-04-22
Closed date
2015-11-18
Last modified date
2016-01-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UA79830 UA79831
Modules/Macros
IEWBNAME
Fix information
Fixed component name
PROGRAM MANAGEM
Fixed component ID
5695PMB01
Applicable component levels
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.
[{"Business Unit":{"code":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"790","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19N","label":"APARs - OS\/390 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"790","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"790","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
04 January 2016