aboutsummaryrefslogtreecommitdiff
path: root/unix/boot/spp/rpp/rpprat/outstr.r
diff options
context:
space:
mode:
Diffstat (limited to 'unix/boot/spp/rpp/rpprat/outstr.r')
-rw-r--r--unix/boot/spp/rpp/rpprat/outstr.r33
1 files changed, 33 insertions, 0 deletions
diff --git a/unix/boot/spp/rpp/rpprat/outstr.r b/unix/boot/spp/rpp/rpprat/outstr.r
new file mode 100644
index 00000000..248bb39c
--- /dev/null
+++ b/unix/boot/spp/rpp/rpprat/outstr.r
@@ -0,0 +1,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