AFHWN — Resolving name conflicts between C and Fortran

The AFHWN cataloged procedure shown in Figure 1 includes the LKED step, which invokes the binder (symbolic name HEWL) to link-edit an object module.

The following DD statement, indicating the location of the object module, must be supplied in the input stream:
//LKED.SYSIN DD *     (or appropriate parameters)

The contents of the SYSIN data set must include the CHANGE statements in member AFHWNCH in SCEESAMP and the object module itself. See Resolving library module name conflicts between Fortran and C for further details.

The data sets SAFHFORT and SCEELKED must both be included in your link-edit SYSLIB concatenation (in that order). SAFHFORT is the name of the Fortran-specific link-edit library and is used to resolve certain Fortran intrinsic function names. SCEELKED is the name of the Language Environment link-edit library. The high-level qualifier of this link-edit library might have been changed at your installation. Figure 1 shows the LKED in AFHWN.

Figure 1. Cataloged procedure AFHWN, used in resolving name conflicts
//AFHWN    PROC LIBPRFX='CEE',
                PGMLIB='&&GOSET',GOPGM=GO
//LKED     EXEC PGM=HEWL,REGION=1024K,PARM='NCAL,LET'
//SYSLIB   DD   DSNAME=&LIBPRFX..SAFHFORT,DISP=SHR
//         DD   DSNAME=&LIBPRFX..SCEELKED,DISP=SHR
//SYSPRINT DD   SYSOUT=*
//SCEESAMP DD   DSNAME=&LIBPRFX..SCEESAMP,DISP=SHR
//SYSLIN   DD   DDNAME=SYSIN
//SYSLMOD  DD   DSNAME=&PGMLIB(&GOPGM),
//              SPACE=(TRK,(10,10,1)),
//              UNIT=SYSDA,DISP=(MOD,PASS)
//SYSUT1   DD   UNIT=SYSDA,SPACE=(TRK,(10,10))