|
|
1.1 root 1: INTEGER FUNCTION OUTLAT(IH, L, ISR)
2: INTEGER STACK, PLAT
3: LOGICAL ERR, SYSERR, ABORT
4: COMMON /DETECT/ ERR, SYSERR, ABORT
5: COMMON /GRAPH/ LLAT, PLAT, LAT(6000)
6: COMMON /CEXPRS/ LSTACK, STACK(620)
7: INTEGER SYMLEN
8: COMMON /PARAMS/ I1, I2, I3, SYMLEN, I4, I5, I6
9: C
10: C IH POINTS TO A PARENTS OR DESCS LIST IN LAT; L IS NUM
11: C OF ELEMENTS FOUND ON LIST; ISR IS ENTRY IN LAT OF
12: C SUPERROOT
13: C
14: C
15: OUTLAT = 0
16: IF (IH) 50, 50, 10
17: 10 K = IH
18: L = 1
19: 20 M = LAT(K)
20: C SKIP OVER CALLS TO ASFS AND OVER SUPEROOT
21: IF(MOD(IGATT2(M+SYMLEN+6,1),8).EQ.4 .OR. M.EQ.ISR) GOTO 30
22: IF(L+1.GT.LSTACK) GOTO 60
23: STACK(L) = M
24: L = L + 1
25: 30 K = LAT(K+1)
26: IF (K) 40, 40, 20
27: 40 L = L - 1
28: IF (L.GT.0) OUTLAT = 1
29: 50 RETURN
30: 60 CALL ERROR1(35H IN OUTLAT, TABLE OVERFLOW OF STACK, 35)
31: SYSERR = .TRUE.
32: GO TO 50
33: END
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.