aboutsummaryrefslogtreecommitdiff
path: root/unix/boot/spp/rpp/ratlibf/enter.f
blob: 6711c57d40c293a306de35c6a7d46380913a86e7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
subroutine enter (symbol, info, st)
      integer symbol (100)
      integer info (100)
      integer st
      integer mem( 1)
      common/cdsmem/mem
      integer i, nodsiz, j
      integer stlu, length
      integer node, pred
      integer dsget
      nodsiz = mem (st)
      if (.not.(stlu (symbol, node, pred, st) .eq. 0))goto 23000
      node = dsget (1 + nodsiz + length (symbol) + 1)
      mem (node + 0) = 0
      mem (pred + 0) = node
      i = 1
      j = node + 1 + nodsiz
23002 if (.not.(symbol (i) .ne. -2))goto 23003
      mem (j) = symbol (i)
      i = i + 1
      j = j + 1
      goto 23002
23003 continue
      mem (j) = -2
23000 continue
      i = 1
23004 if (.not.(i .le. nodsiz))goto 23006
      j = node + 1 + i - 1
      mem (j) = info (i)
23005 i = i + 1
      goto 23004
23006 continue
      return
      end