aboutsummaryrefslogtreecommitdiff
path: root/unix/boot/spp/rpp/rpprat/outstr.r
blob: 248bb39c5d4babb35c1431f1b81f228bacf47e1a (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
#-h-  outstr			  687  local   12/01/80  15:54:32
# outstr - output string; handles quoted literals
   include  defs

   subroutine outstr (str)
   character str (ARB)

   character c
   ifdef (UPPERC, character cupper)

   integer i, j

   for (i = 1; str (i) != EOS; i = i + 1) {
      c = str (i)
      if (c != SQUOTE & c != DQUOTE) {
			 # produce upper case fortran, if desired
	 ifdef (UPPERC,
	    c = cupper (c)
	    )
	 call outch (c)
	 }
      else {
	 i = i + 1
	 for (j = i; str (j) != c; j = j + 1)	# find end
	    ;
	 call outnum (j - i)
	 call outch (BIGH)
	 for ( ; i < j; i = i + 1)
	    call outch (str (i))
	 }
      }
   return
   end