$(1) PREQ . SET TYPE FOR ALL TYPE STATEMENTS 393500 . 393600 SETT* S,H2 B11,SE30 (A LMJ B11,SETT 393700 S A6,SE11 (A+1 +N 393800 L A6,*0,B11 REENT SZ SE12 FLAG FOR FUNCTION NAME 394000 LMJ B11,GLS 394100 J SE400 NOT IN SYM TAB 394200 L,H1 A2,2,A1 394300 AND,M A2,070 SSL A3,3 CSC17 TNE A3,A6 . TEST TO SEE IF MODE IS THE SAME J SE605 AND,M A2,7 394400 NOP 0,0 394500 J SE21,A3 BRANCH ON CLASS SE300 AND,M A2,01000 C=0 394700 S A3,SE12 PUT F IN FLAG CELL 394800 SE301 AND,M A2,070 BRANCH OR TYPE 394900 JZ A3,SE500 395000 SE306 L A3,ST . TYPE FUNCTION OVERRULES ALL JNB A3,SE505 LMJ B11,PERR 395100 FORM6 031,2,SYMV 395200 AND,M A2,7 . IGNORE TYPE STATEMENT ILLEGALLY JNZ A3,SE504 . FOLLOWING REF. TO FUNC OR SUBROUTINE J SE500 395300 SE305 AND,M A2,070 JNZ A3,SE306 SE302 SSC A6,33 TNZ,S6 2,A1 ALREADY TYPED? J SE302A NO LMJ B11,PERR YES FORM6 031,2,SYMV MULTIPLY DEFINED TYPE SE302A . S,S6 A6,2,A1 SAVE TYPE TO LOOK AT ON FIRST USE J SE504 . 395400 SE320 AND,M A2,070 . C=7 JZ A3,SE340 SE330 LMJ B11,PERR . C=3 OR 4 FORM6 031,2,SYMV 395600 SE340 SZ,S2 2,A1 SZ,H2 2,A1 SZ,S3 2,A1 395800 SZ 3,A1 . CLEAR DEFINITION POINT SE400 L,H1 A2,2,A1 395900 A,M A2,0407 D=4,C=7 (UNASSIGNED) SE500 AND A2,(0777707) 396000 SSC A6,33 396100 OR A3,A6 396200 S,H1 A4,2,A1 396300 SE504 TE,M A6,030 TNE,M A6,040 396500 J SE501 N=3, OR 4 CHECK EQ 396600 SE502 TNZ SE12 FL=0 396700 J SE600 YES 396800 L A4,GITV NO 396900 LMJ B11,SLT GET EXTERNAL SYM REF 397000 + CRGHL 397100 SLJ BUG L,H1 A2,2,A1 397300 AND,M A2,070 397400 JZ A3,SE503 TNE A3,A6 J SE600 LMJ B11,PERR FORM6 030,2,SYMV SE503 AND A2,(0777707) 397800 OR A3,A6 397900 S,H1 A4,2,A1 L A1,SYMV 398100 SE600 L,H2 B11,SE30 398200 L A6,SE11 398300 J 1,B11 398400 SE505 LMJ B11,PERR FORM6 030,2,SYMV J SE500 . 398500 SE610 AND,M A2,0100 INTRINSIC FUNCTION TNZ CRCNVT J SE610A TN,XH2 2,A1 TEST FOR MAGIC FUNCTION J SE610A TNE,M A6,2 IF MAGIC FUNCTIONS ARE BEING CHANGED TO REAL IGNORE J SE600 SE610A SZ 3,A1 SZ,H2 2,A1 CLEAN UP MAGIC LIBRARY NAME JZ A3,SE340 HAS FUNCTION BEEN REFERENCED J SE330 -YES, ERROR SE501 AND,M A2,04000 398600 JZ A3,SE502 398700 LMJ B11,PERR 398800 FORM6 031,3,SYMV 398900 J SE502 399000 . 399900 SE21 J SE300 C=0 400000 J SE301 1 400100 J SE301 2 400200 J SE330 3 400300 J SE330 4 400400 J SE305 5 DUMMY ARGUMENT J SE610 C=6 J SE320 C=7 SE605 AND,M A2,7 TE,M A3,6 J SE600 TZ MACNO J SE600 LMJ B11,PERR FORM6 030,162,SYMV L A3,ST L A0,GXX TNE,M A0,'(' J SE610 J SE600 J SE610 . 400800 . 393300 . 399100 . SETT CONSTANTS 399300 . 399400 $(2) . REENT SE11 +0 SAVE A6 SE12 +0 FLAG . 399700 SE30 J $ RETURN 399800 END