Assembly of ADSMVS60 fails with ASMA167E Required name missing
search cancel

Assembly of ADSMVS60 fails with ASMA167E Required name missing

book

Article ID: 5290

calendar_today

Updated On:

Products

Disk Backup and Restore - MVS DISK BACKUP AND RESTORE- ADD-ON OPTIO DISK BACKUP AND RESTORE

Issue/Introduction

Assembly of Disk™ Backup and Restore SVC module ADSMVS60 fails with Condition Code 8 and error message:

"ASMA167E Required name missing"

for the LOCTR statement from the MLIST macro at the end of the source code. Following is the related extract from assembly listing:

 

                       00020       10264+RS32     EQU   32

                                   10265+         LOCTR ,  

** ASMA167E Required name missing                         

** ASMA435I Record 89 in your.CCUWMAC(MLIST) on volume: vvvvvv

000080                 00080 00080 10266+CPOOLPOL LOCTR    

Environment

Release: Disk™ Backup and Restore

Cause

The Problem occurs, if the Assembler runs with SYSIN DD * followed by the source code from ADSMVS60 as in-stream data.

In this case the &SYSIN_MEMBER variable, used by the MLIST macro to create the label for the LOCTR statement, is not resolved resulting in the error below:

"** ASMA167E Required name missing".

Resolution

Don't use SYSIN DD * to assemble ADSMVS60.

Use SYSIN DD referring to member ADSMVS60 in a library.

NOTE: Changes should not be made to ADSMVS60 in CCUWSAMP, as this library is under SMPE control and changes might be lost after maintenance for this module. Copy ADSMVS60 to a user library and when customized install ADSMVS60 running the JCL from member USERMOD1 in the CCUWJCL library:

//JOBNAME  JOB (ACCT INFO)                                            
//*********************************************************************
//*                INSTALL DISK OPEN SVC                              *
//*                                                                   *
//*********************************************************************
//SMP     EXEC PGM=GIMSMP,REGION=5120K,                               
//             PARM='CSI=CAISMPE.CSI'                                 
//SYSPRINT  DD SYSOUT=*                                               
//SMPRPT    DD SYSOUT=*                                                
//SMPOUT    DD SYSOUT=*                                               
//SMPHOLD   DD DUMMY                                                  
//USERASM   DD DISP=SHR,DSN=USERID.ASM                                
//SMPCNTL   DD *                                                      
SET BOUNDARY(GLOBAL).                                                 
RECEIVE  S(SDU1811).                                                  
SET BOUNDARY(CAIT0).                                                   
APPLY S(SDU1811) ASSEM .                                              
//SMPPTFIN  DD *                                                      
++USERMOD(SDU1811).                                                   
++VER(Z038) FMID(CCUWC00).                                            
++SRC(ADSMVS60) DISTLIB(ACUWSAMP) DISTMOD(ACUWMOD0) TXLIB(USERASM).   
/* 

The USERASM DD in USERMOD1 refers to the user library containing the modified ADSMVS60 source code