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.
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