Resources



Problem Fix Number: 4554

For SYSTEM 2000 Version: 11.6

Problem Status: ZA (Zap Available) -- Fix tested at customer site

Description of Problem:

FORTRAN REPORT WRITER EXIT DOES NOT INITIALIZE RUN-TIME LIBRARY.


Download Fix:

Note:   Please send email to s2k@sas.com telling us which problem fixes you have downloaded so we can keep track of the fixes at your site in case questions or problems arise.


Top of Zap Deck:

 *  IBM V11.6   BUG 4554  OS                                                     
 *                                                                               
 VSFORSUB START 0                                                                
 ***********************************************************************         
 *                                                                     *         
 * FUNCTION: CALL VFEIL# BEFORE CALL TO FORTRAN SUBROUTINE USED IN S2K *         
 *           REPORT WRITER USER EXIT TO INITIALIZE FORTRAN ENVIRONMENT *         
 *                                                                     *         
 *  **NOTE**                                                           *         
 *     1.  THE NAME OF THIS ASSEMBLER ROUTINE MUST BE THE SAME AS THAT *         
 *         SPECIFIED IN THE REPORT WRITER USER EXIT.                   *         
 *     2.  THIS MODULE MUST BE LINKED WITH THE USER FORTRAN PROGRAM,   *         
 *         SPECIFYING THE ASSEMBLER ENTRY POINT (VSFORSUB IN THIS CASE)*         
 *         AS THE MAIN ENTRY POINT.                                    *         
 *     3.  THE VCON FORSUBR USED IN THIS ROUTINE REPRESENTS THE NAME   *         
 *         USED IN PROGRAM-ID OF FORTRAN EXIT PROGRAM. IT INDICATES    *         
 *         ENTRY AT PROCEDURE DIV.  IF A NAME OTHER THAN FORSUBR       *         
 *         IS USED IN PROGRAM-ID, THAT NAME MUST REPLACE THE NAME      *         
 *         FORSUBR IN THIS ROUTINE.                                    *         
 *     4.  THE RUN TIME FORTRAN II LIBRARY CONTAINING VFEIL# MUST BE   *         
 *         CONCATENATED IN THE LIST OF LIBRARIES CONTAINING LOAD       *         
 *         MODULES IN THE JCL USED FOR THE JOB.  VFEIL# IS AN IBM      *         
 *         SUPPLIED ROUTINE.                                           *         
 ***********************************************************************         
          USING *,15                USE REGISTER 12 AS BASE                      
          STM   14,12,12(13)        SAVE CALLING PROGRAM REGISTERS               
          LA    8,SAVEAREA                                                       
          ST    13,4(8)             SAVE REGISTER 13                             
          ST    8,8(13)             MY SAVEAREA ADR IN CALLING PGM               
          LA    13,SAVEAREA                                                      
          LR    12,15                                                            
          DROP  15                                                               
          USING VSFORSUB,12                                                      
          L     15,ADRILBD          ILBDSET0 PGM TO INDICATE FORTRAN             
          XC    ADRILBD(4),ADRILBD  CLEAR OUT ADDRESS                            
          LTR   15,15               IS THIS SECOND PASS?                         
          BZ    CONTINUE            YES, GO TO CONTINUE                          
          BALR  14,15               PROGRAM IS A SUBPROGRAM                      
 CONTINUE L     11,4(13)            GET OLD REGISTER 13                          
          LM    1,11,24(11)         RESTORE REGISTERS TO ENTRY VALUES            
          L     15,ADRSUBR          ADDRESS OF FORTRAN SUBPROGRAM                
          BALR  14,15                                                            
          L     13,4(13)            RESTORE REGISTER 13                          
          LM    14,12,12(13)        RESTORE REGISTERS                            
          BR    14                  RETURN TO S2K                                
 ADRILBD  DC    V(VFEIL#)           IBM SUPPLIED ROUTINE                         
 ADRSUBR  DC    V(FORSUBR)          VCON TO USER'S FORTRAN ROUTINE, TO BE        
 *                                  REPLACED BY USER, IF NEED BE.                
 SAVEAREA DC    20D'0'                                                           
          END   VSFORSUB                                                         

End of Zap Deck