Annotation of researchv10no/cmd/pfort/IFS.f, revision 1.1

1.1     ! root        1:       SUBROUTINE IFS(LOG)
        !             2:       LOGICAL TOKLAB, ERR, SYSERR, ABORT, LOG
        !             3:       INTEGER STMT, PSTMT, EXPR
        !             4:       COMMON /INPUT/ NSTMT, PSTMT, STMT(1327)
        !             5:       COMMON /DETECT/ ERR, SYSERR, ABORT
        !             6: C
        !             7: C     ROUTINE PROCESSES ARITHMETIC AND LOGICAL IF STMTS
        !             8: C     LOG RETURNED AS TRUE IF LOGICAL-IF IS ENCOUNTERED;PU CHECKS FOR
        !             9: C     ACCEPTIBLE EXECUTABLE STMT AFTER LOGICAL EXPRESSION
        !            10: C
        !            11:       LOG = .FALSE.
        !            12:       L = MOD(EXPR(I),8)
        !            13:       IF (-1.EQ.L .OR. SYSERR) GO TO 30
        !            14:       LOG = L.EQ.4
        !            15:       IF (LOG) GO TO 30
        !            16: C
        !            17: C     ARITHMETIC IF--SEARCH FOR  <LAB>,<LAB>,<LAB>
        !            18: C
        !            19:       IF (L.GT.2) GO TO 50
        !            20:       I = 0
        !            21:       IF (PSTMT.GE.NSTMT) GO TO 20
        !            22:    10 IF (.NOT.TOKLAB(1,K2,L,.FALSE.)) GO TO 40
        !            23:       IF (SYSERR) GO TO 30
        !            24:       I = I + 1
        !            25:       IF (I.EQ.3) GO TO 60
        !            26:       IF (STMT(K2).NE.68) GO TO 20
        !            27:       PSTMT = K2 + 1
        !            28:       IF (PSTMT.LT.NSTMT) GO TO 10
        !            29:    20 CALL ERROR1(15H ILLEGAL SYNTAX, 15)
        !            30:    30 RETURN
        !            31:    40 CALL ERROR1(14H MISSING LABEL, 14)
        !            32:       GO TO 30
        !            33:    50 CALL ERROR1(39H COMPLEX EXPRESSION ILLEGAL IN ARITH-IF, 39)
        !            34:       GO TO 30
        !            35:    60 IF (K2.EQ.NSTMT) GO TO 30
        !            36:       CALL ERROR1(34H EXTRANEOUS INFO AFTER END OF STMT, 34)
        !            37:       GO TO 30
        !            38:       END

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.