Annotation of researchv10no/cmd/spitbol/test1.spt, revision 1.1

1.1     ! root        1: -TITLE  SPITBOL TEST PROGRAM #1 -- DIAGNOSTICS PHASE ONE
        !             2: -IN80
        !             3: *
        !             4:         OUTPUT  = 'TEST #1 '
        !             5: *
        !             6: *
        !             7: *   THIS IS A STANDARD TEST PROGRAM FOR SPITBOL WHICH TESTS
        !             8: *   OUT FUNCTIONS, OPERATORS AND DATATYPE MANIPULATIONS
        !             9: *
        !            10:         TRACE(.TEST)
        !            11:         &TRACE  = 1000
        !            12:         STARS   = '  ERROR DETECTED          ***'
        !            13:         &ERRLIMIT = 1000
        !            14:         SETEXIT(.ERRORS)         ;*        SET INTERRUPT LOCATION
        !            15:         OUTPUT  = '************************************************'
        !            16:         OUTPUT  = '**** S P I T B O L    D I A G N O S T I C S ****'
        !            17:         OUTPUT  = '****          P H A S E    O N E            ****'
        !            18:         OUTPUT  = '************************************************'
        !            19:         OUTPUT  = '****  ANY TRACE OUTPUT INDICATES AN ERROR   ****'
        !            20:         OUTPUT  = '************************************************'
        !            21: *
        !            22: *   TEST REPLACE FUNCTION
        !            23: *
        !            24:         TEST    = DIFFER(REPLACE('AXXBYYY','XY','01'),'A00B111') STARS
        !            25:         A       = REPLACE(&ALPHABET,'XY','AB')
        !            26:         TEST    = DIFFER(REPLACE('AXY',&ALPHABET,A),'AAB') STARS
        !            27: *
        !            28: *   TEST LPAD,RPAD FUNCTIONS
        !            29: *
        !            30:         TEST    = DIFFER(LPAD('ABC',5,'X'),'XXABC') STARS
        !            31:         TEST    = DIFFER(RPAD('ABC',5,'X'),'ABCXX') STARS
        !            32:         TEST    = DIFFER(LPAD(12,5),'   12') STARS
        !            33:         TEST    = DIFFER(RPAD(10,4),'10  ') STARS
        !            34:         TEST    = DIFFER(LPAD('ABC',2),'ABC') STARS
        !            35:         TEST    = DIFFER(RPAD('AB',1),'AB') STARS
        !            36:         TEST    = DIFFER(LPAD('AB',2),'AB') STARS
        !            37:         TEST    = DIFFER(LPAD()) STARS
        !            38:         TEST    = DIFFER(LPAD(,5),'     ') STARS
        !            39: *
        !            40: *   TEST CONVERT FUNCTION
        !            41: *
        !            42:         TEST    = DIFFER(CONVERT('8.9','NUMERIC') , 8.9) STARS
        !            43:         TEST    = DIFFER(CONVERT('100','NUMERIC') , 100) STARS
        !            44:         TEST    = DIFFER(CONVERT('12','INTEGER') , 12) STARS
        !            45:         TEST    = DIFFER(CONVERT(2.5,'INTEGER'),2)       STARS
        !            46:         TEST    = DIFFER(CONVERT(2,'REAL'),2.0) STARS
        !            47:         TEST    = DIFFER(CONVERT('.2','REAL'),0.2) STARS
        !            48: *
        !            49: *   TEST REVERSE FUNCTION
        !            50: *
        !            51:         TEST    = DIFFER(REVERSE('123'),'321') STARS
        !            52:         TEST    = DIFFER(REVERSE()) STARS
        !            53:         TEST    = DIFFER(REVERSE(12),'21') STARS
        !            54: *
        !            55: *   TEST DATATYPE FUNCTION
        !            56: *
        !            57:         TEST    = DIFFER(DATATYPE('JKL'),'STRING') STARS
        !            58:         TEST    = DIFFER(DATATYPE(12),'INTEGER') STARS
        !            59:         TEST    = DIFFER(DATATYPE(1.33),'REAL') STARS
        !            60:         TEST    = DIFFER(DATATYPE(NULL),'STRING') STARS
        !            61: *
        !            62: *   TEST ARITHMETIC OPERATORS
        !            63: *
        !            64:         TEST    = DIFFER(3 + 2,5) STARS
        !            65:         TEST    = DIFFER(3 - 2,1) STARS
        !            66:         TEST    = DIFFER(3 * 2,6) STARS
        !            67:         TEST    = DIFFER(5 / 2,2) STARS
        !            68:         TEST    = DIFFER(13 / 7,1) STARS
        !            69:         TEST    = DIFFER(13 / -7,-1) STARS
        !            70:         TEST    = DIFFER(-13 / 7,-1) STARS
        !            71:         TEST    = DIFFER(-13 / -7,1) STARS
        !            72:         TEST    = DIFFER(13 / 13,1) STARS
        !            73:         TEST    = DIFFER(13 / -13,-1) STARS
        !            74:         TEST    = DIFFER(-13 / 13,-1) STARS
        !            75:         TEST    = DIFFER(-13 / -13,1) STARS
        !            76:         TEST    = DIFFER(13 / 14,0) STARS
        !            77:         TEST    = DIFFER(13 / -14,0) STARS
        !            78:         TEST    = DIFFER(2 ** 3,8) STARS
        !            79:         TEST    = DIFFER(3 + 1,4) STARS
        !            80:         TEST    = DIFFER(3 - 1,2) STARS
        !            81:         TEST    = DIFFER('3' + 2,5) STARS
        !            82:         TEST    = DIFFER(3 + '-2',1) STARS
        !            83:         TEST    = DIFFER('1' + '0',1) STARS
        !            84:         TEST    = DIFFER(5 + NULL,5) STARS
        !            85:         TEST    = DIFFER(-5,0 - 5) STARS
        !            86:         TEST    = DIFFER(+'4',4) STARS
        !            87:         TEST    = DIFFER(2.0 + 3.0,5.0) STARS
        !            88:         TEST    = DIFFER(3.0 - 1.0,2.0) STARS
        !            89:         TEST    = DIFFER(3.0 * 2.0,6.0) STARS
        !            90:         TEST    = DIFFER(3.0 / 2.0,1.5) STARS
        !            91:         TEST    = DIFFER(3.0 ** 3,27.0) STARS
        !            92:         TEST    = DIFFER(-1.0,0.0 - 1.0) STARS
        !            93: *
        !            94: *   TEST MIXED MODE
        !            95: *
        !            96:         TEST    = DIFFER(1 + 2.0,3.0) STARS
        !            97:         TEST    = DIFFER(3.0 / 2,1.5) STARS
        !            98: *
        !            99: *   TEST FUNCTIONS
        !           100: *
        !           101: *   FIRST, A SIMPLE TEST OF A FACTORIAL FUNCTION
        !           102: *
        !           103:         DEFINE('FACT(N)')                               :(FACTEND)
        !           104: FACT    FACT    = EQ(N,1) 1                             :S(RETURN)
        !           105:         FACT    = N * FACT(N - 1)                       :(RETURN)
        !           106: FACTEND TEST    = NE(FACT(5),120) STARS
        !           107:         TEST    = DIFFER(OPSYN(.FACTO,'FACT')) STARS
        !           108:         TEST    = DIFFER(FACTO(4),24) STARS
        !           109: *
        !           110: *   SEE IF ALTERNATE ENTRY POINT WORKS OK
        !           111: *
        !           112:         DEFINE('FACT2(N)',.FACT2ENT)                    :(FACT2ENDF)
        !           113: FACT2ENT FACT2  = EQ(N,1) 1                             :S(RETURN)
        !           114:         FACT2   = N * FACT2(N - 1)                      :(RETURN)
        !           115: FACT2ENDF       OUTPUT  = NE(FACT2(6),720) STARS
        !           116: *
        !           117: *   TEST FUNCTION REDEFINITION AND CASE OF ARGUMENT = FUNC NAME
        !           118: *
        !           119:         TEST    = DIFFER(DEFINE('FACT(FACT)','FACT3')) STARS
        !           120: .                                                       :(FACT2END)
        !           121: FACT3   FACT    = NE(FACT,1) FACT * FACT(FACT - 1)
        !           122: .                                                       :(RETURN)
        !           123: FACT2END
        !           124:         TEST    = NE(FACT(4),24) STARS
        !           125: *
        !           126: *   TEST OUT LOCALS
        !           127: *
        !           128:         DEFINE('LFUNC(A,B,C)D,E,F')                     :(LFUNCEND)
        !           129: LFUNC   TEST    = ~(IDENT(A,'A') IDENT(B,'B') IDENT(C,'C')) STARS
        !           130: *   TEST = ~(IDENT(D) IDENT(E) IDENT(F)) STARS
        !           131:         A       = 'AA' ; B = 'BB' ; C = 'CC' ; D = 'DD' ; E = 'EE' ; F = 'FF'
        !           132: .                                                       :(RETURN)
        !           133: LFUNCEND        AA      = 'A' ; BB = 'B' ; CC = 'C'
        !           134:         D       = 'D' ; E = 'E' ; F = 'F'
        !           135:         A       = 'X' ; B = 'Y' ; C = 'Z'
        !           136:         TEST    = DIFFER(LFUNC(AA,BB,CC)) STARS
        !           137:         TEST    = ~(IDENT(A,'X') IDENT(B,'Y') IDENT(C,'Z')) STARS
        !           138:         TEST    = ~(IDENT(AA,'A') IDENT(BB,'B') IDENT(CC,'C')) STARS
        !           139:         TEST    = ~(IDENT(D,'D') IDENT(E,'E') IDENT(F,'F')) STARS
        !           140: *
        !           141: *   TEST NRETURN
        !           142: *
        !           143:         DEFINE('NTEST()')                               :(ENDNTEST)
        !           144: NTEST   NTEST   = .A                                    :(NRETURN)
        !           145: ENDNTEST        A       = 27
        !           146:         TEST    = DIFFER(NTEST(),27) STARS
        !           147: .           :F(ST59)            ;ST59
        !           148:         NTEST() = 26
        !           149: .           :F(ST60)            ;ST60
        !           150:         TEST    = DIFFER(A,26) STARS
        !           151: *
        !           152: *   CONTINUE TEST OF FUNCTIONS
        !           153: *
        !           154: *
        !           155: *   TEST FAILURE RETURN
        !           156: *
        !           157:         DEFINE('FAILURE()')                             :(FAILEND)
        !           158: FAILURE                                                 :(FRETURN)
        !           159: FAILEND TEST    = FAILURE() STARS
        !           160: *
        !           161: *   TEST OPSYN FOR OPERATORS
        !           162: *
        !           163:         OPSYN('@',.DUPL,2)
        !           164:         OPSYN('|',.SIZE,1)
        !           165:         TEST    = DIFFER('A' @ 4,'AAAA') STARS
        !           166:         TEST    = DIFFER(|'STRING',6) STARS
        !           167: *
        !           168: *   TEST OUT ARRAY FACILITY
        !           169: *
        !           170:         A       = ARRAY(3)
        !           171:         TEST    = DIFFER(A[1]) STARS
        !           172:         A[2]    = 4.5
        !           173:         TEST    = DIFFER(A[2],4.5) STARS
        !           174:         TEST    = ?A[4] STARS
        !           175:         TEST    = ?A[0] STARS
        !           176:         TEST    = DIFFER(PROTOTYPE(A),3) STARS
        !           177:         B       = ARRAY(3,10)
        !           178:         TEST    = DIFFER(B[2],10) STARS
        !           179:         B       = ARRAY('3')
        !           180:         B[2]    = 'A'
        !           181:         TEST    = DIFFER(B[2],'A') STARS
        !           182:         C       = ARRAY('2,2')
        !           183:         C[1,2]  = '*'
        !           184:         TEST    = DIFFER(C[1,2],'*') STARS
        !           185:         TEST    = DIFFER(PROTOTYPE(C),'2,2') STARS
        !           186:         D       = ARRAY('-1:1,2')
        !           187:         D[-1,1] = 0
        !           188:         TEST    = DIFFER(D[-1,1],0) STARS
        !           189:         TEST    = ?D[-2,1] STARS
        !           190:         TEST    = ?D[2,1] STARS
        !           191: *
        !           192: *   TEST PROGRAM DEFINED DATATYPE FUNCTIONS
        !           193: *
        !           194:         DATA('NODE(VAL,LSON,RSON)')
        !           195:         A       = NODE('X','Y','Z')
        !           196:         TEST    = DIFFER(DATATYPE(A),'NODE') STARS
        !           197:         TEST    = DIFFER(VAL(A),'X') STARS
        !           198:         B       = NODE()
        !           199:         TEST    = DIFFER(RSON(B)) STARS
        !           200:         LSON(B) = A
        !           201:         TEST    = DIFFER(RSON(LSON(B)),'Z') STARS
        !           202: *   TEST = DIFFER(VALUE('B'),B) STARS
        !           203: *
        !           204: *   TEST MULTIPLE USE OF FIELD FUNCTION NAME
        !           205: *
        !           206:         DATA('CLUNK(VALUE,LSON)')
        !           207:         TEST    = DIFFER(RSON(LSON(B)),'Z') STARS
        !           208: *   TEST = DIFFER(VALUE('B'),B) STARS
        !           209:         C       = CLUNK('A','B')
        !           210:         TEST    = DIFFER(LSON(C),'B') STARS
        !           211: *
        !           212: *   TEST NUMERICAL PREDICATES
        !           213: *
        !           214:         TEST    = LT(5,4) STARS
        !           215:         TEST    = LT(4,4) STARS
        !           216:         TEST    = ~LT(4,5) STARS
        !           217:         TEST    = LE(5,2) STARS
        !           218:         TEST    = ~LE(4,4) STARS
        !           219:         TEST    = ~LE(4,10) STARS
        !           220:         TEST    = EQ(4,5) STARS
        !           221:         TEST    = EQ(5,4) STARS
        !           222:         TEST    = ~EQ(5,5) STARS
        !           223:         TEST    = NE(4,4) STARS
        !           224:         TEST    = ~NE(4,6) STARS
        !           225:         TEST    = ~NE(6,4) STARS
        !           226:         TEST    = GT(4,6) STARS
        !           227:         TEST    = GT(4,4) STARS
        !           228:         TEST    = ~GT(5,2) STARS
        !           229:         TEST    = GE(5,7) STARS
        !           230:         TEST    = ~GE(4,4) STARS
        !           231:         TEST    = ~GE(7,5) STARS
        !           232:         TEST    = NE(4,5 - 1) STARS
        !           233:         TEST    = GT(4,3 + 1) STARS
        !           234:         TEST    = LE(20,5 + 6) STARS
        !           235:         TEST    = EQ(1.0,2.0) STARS
        !           236:         TEST    = GT(-2.0,-1.0) STARS
        !           237:         TEST    = GT(-3.0,4.0) STARS
        !           238:         TEST    = NE('12',12) STARS
        !           239:         TEST    = NE('12',12.0) STARS
        !           240:         TEST    = ~CONVERT(BAL,'PATTERN') STARS
        !           241: *
        !           242: *   TEST INTEGER
        !           243: *
        !           244:         TEST    = INTEGER('ABC') STARS
        !           245:         TEST    = ~INTEGER(12) STARS
        !           246:         TEST    = ~INTEGER('12') STARS
        !           247: *
        !           248: *   TEST SIZE
        !           249: *
        !           250:         TEST    = NE(SIZE('ABC'),3) STARS
        !           251:         TEST    = NE(SIZE(12),2) STARS
        !           252:         TEST    = NE(SIZE(NULL),0) STARS
        !           253: *
        !           254: *   TEST LGT
        !           255: *
        !           256:         TEST    = LGT('ABC','XYZ') STARS
        !           257:         TEST    = LGT('ABC','ABC') STARS
        !           258:         TEST    = ~LGT('XYZ','ABC') STARS
        !           259:         TEST    = LGT(NULL,'ABC') STARS
        !           260:         TEST    = ~LGT('ABC',NULL) STARS
        !           261: *
        !           262: *   TEST INDIRECT ADDRESSING
        !           263: *
        !           264:         TEST    = DIFFER($'BAL',BAL) STARS
        !           265:         TEST    = DIFFER($.BAL,BAL) STARS
        !           266:         $'QQ' = 'X'
        !           267:         TEST    = DIFFER(QQ,'X') STARS
        !           268:         TEST    = DIFFER($'GARBAGE') STARS
        !           269:         A       = ARRAY(3)
        !           270:         A[2]    = 'X'
        !           271:         TEST    = DIFFER($.A[2],'X') STARS
        !           272: *
        !           273: *   TEST CONCATENATION
        !           274: *
        !           275:         TEST    = DIFFER('A' 'B','AB')        STARS
        !           276:         TEST    = DIFFER('A' 'B' 'C','ABC') STARS
        !           277:         TEST    = DIFFER(1 2,'12') STARS
        !           278:         TEST    = DIFFER(2 2 2,'222') STARS
        !           279:         TEST    = DIFFER(1 3.4,'13.4') STARS
        !           280:         TEST    = DIFFER(BAL NULL,BAL)        STARS
        !           281:         TEST    = DIFFER(NULL BAL,BAL) STARS
        !           282: *
        !           283: *   TEST DREALS
        !           284: *
        !           285:         TEST    = DIFFER(1.0D2 + 2.0D2,3.0D2) STARS
        !           286:         TEST    = DIFFER(2.5D0 * 2.0D0,5.00D0) STARS
        !           287:         TEST    = DIFFER(3.0D0 / 3.0D0,1.0D0) STARS
        !           288:         TEST    = DIFFER(4.0D0 - 3.0D0,1.0D0) STARS
        !           289: *   TEST = DIFFER(3.D0 + 1.,4.D0) STARS
        !           290: *   TEST = DIFFER(1. + 3.D0,4.D0) STARS
        !           291:         TEST    = DIFFER(1.0D0 + 1,2.0D0) STARS
        !           292:         TEST    = DIFFER(3 + 1.0D0,4.0D0) STARS
        !           293:         TEST    = DIFFER(3.0D0 ** 3,27.0D0) STARS
        !           294: *
        !           295: *   TEST REMDR
        !           296: *
        !           297:         TEST    = DIFFER(REMDR(10,3),1) STARS
        !           298:         TEST    = DIFFER(REMDR(11,10),1) STARS
        !           299:         TEST    = DIFFER(REMDR(13,7),6) STARS
        !           300:         TEST    = DIFFER(REMDR(13,-7),6) STARS
        !           301:         TEST    = DIFFER(REMDR(-13,7),-6) STARS
        !           302:         TEST    = DIFFER(REMDR(-13,-7),-6) STARS
        !           303:         TEST    = DIFFER(REMDR(13,13),0) STARS
        !           304:         TEST    = DIFFER(REMDR(13,-13),0) STARS
        !           305:         TEST    = DIFFER(REMDR(-13,13),0) STARS
        !           306:         TEST    = DIFFER(REMDR(-13,-13),0) STARS
        !           307: *
        !           308: *   TEST DUPL
        !           309: *
        !           310:         TEST    = DIFFER(DUPL('ABC',2),'ABCABC') STARS
        !           311:         TEST    = DIFFER(DUPL(NULL,10),NULL) STARS
        !           312:         TEST    = DIFFER(DUPL('ABCDEFG',0),NULL) STARS
        !           313:         TEST    = DIFFER(DUPL(1,10),'1111111111')  STARS
        !           314: *
        !           315: *   TEST TABLE FACILITY
        !           316: *
        !           317:         T       = TABLE(10)
        !           318:         TEST    = DIFFER(T['CAT']) STARS
        !           319:         T['CAT'] = 'DOG'
        !           320:         TEST    = DIFFER(T['CAT'],'DOG')   STARS
        !           321:         T[7]    = 45
        !           322:         TEST    = DIFFER(T[7],45)   STARS
        !           323:         TEST    = DIFFER(T['CAT'],'DOG')  STARS
        !           324:         TA      = CONVERT(T,'ARRAY')
        !           325:         TEST    = DIFFER(PROTOTYPE(TA),'2,2') STARS
        !           326:         ATA     = CONVERT(TA,'TABLE')
        !           327:         TEST    = DIFFER(ATA[7],45) STARS
        !           328:         TEST    = DIFFER(ATA['CAT'],'DOG') STARS
        !           329: *
        !           330: *   TEST ITEM FUNCTION
        !           331: *
        !           332:         AAA     = ARRAY(10)
        !           333:         ITEM(AAA,1) = 5
        !           334:         TEST    = DIFFER(ITEM(AAA,1),5) STARS
        !           335:         TEST    = DIFFER(AAA[1],5) STARS
        !           336:         AAA[2]  = 22
        !           337:         TEST    = DIFFER(ITEM(AAA,2),22) STARS
        !           338:         AMA     = ARRAY('2,2,2,2')
        !           339:         ITEM(AMA,1,2,1,2) = 1212
        !           340:         TEST    = DIFFER(ITEM(AMA,1,2,1,2),1212) STARS
        !           341:         TEST    = DIFFER(AMA[1,2,1,2],1212) STARS
        !           342:         AMA[2,1,2,1] = 2121
        !           343:         TEST    = DIFFER(ITEM(AMA,2,1,2,1),2121) STARS
        !           344: *
        !           345: *   TEST EVAL
        !           346: *
        !           347:         EXPR    = *('ABC' 'DEF')
        !           348:         TEST    = DIFFER(EVAL(EXPR),'ABCDEF') STARS
        !           349:         Q       = 'QQQ'
        !           350:         SEXP    = *Q
        !           351:         TEST    = DIFFER(EVAL(SEXP),'QQQ') STARS
        !           352:         FEXP    = *IDENT(1,2)
        !           353:         TEST    = EVAL(FEXP) STARS
        !           354: *
        !           355: *   TRY A FEW ALTERNATIONS
        !           356: *
        !           357:         TEST    = DIFFER((GT(3,1) 3,1),3) STARS
        !           358:         TEST    = DIFFER((LT(3,1) 3,1),1) STARS
        !           359:         TEST    = DIFFER(EVAL(*(NE(1,2) 'A','B')),'A') STARS
        !           360:         TEST    = DIFFER(EVAL(*(EQ(1,2) 'A','B')),'B') STARS
        !           361: *
        !           362: *   TEST SUBSTR
        !           363: *
        !           364:         TEST    = DIFFER(SUBSTR('ABC',2,1),'B') STARS
        !           365:         TEST    = DIFFER(SUBSTR('ABCDEF',1,5),'ABCDE') STARS
        !           366:         TEST    = SUBSTR('ABC',50,1) STARS
        !           367:         TEST    = SUBSTR('ABC',81,50) STARS
        !           368:         TEST    = SUBSTR(NULL,1,1) STARS
        !           369: *
        !           370: *   TEST ARG
        !           371: *
        !           372: JLAB    DEFINE('JLAB(A,B,C)D,E,F')
        !           373:         TEST    = DIFFER(ARG(.JLAB,1),.A) STARS
        !           374:         TEST    = DIFFER(ARG(.JLAB,3),.C) STARS
        !           375:         $ARG(.JLAB,1) = 'QWERT'
        !           376:         TEST    = DIFFER(A,'QWERT') STARS
        !           377:         TEST    = ARG(.JLAB,0) STARS
        !           378:         TEST    = ARG(.JLAB,4) STARS
        !           379: *
        !           380: *   TEST LOC
        !           381: *
        !           382:         TEST    = DIFFER(LOCAL(.JLAB,1),.D) STARS
        !           383:         TEST    = DIFFER(LOCAL(.JLAB,3),.F) STARS
        !           384:         TEST    = LOCAL(.JLAB,0) STARS
        !           385:         TEST    = LOCAL('JLAB',4) STARS
        !           386: *
        !           387: *   TEST APPLY
        !           388: *
        !           389:         TEST    = APPLY(.EQ,1,2) STARS
        !           390:         TEST    = ~APPLY(.EQ,1,1) STARS
        !           391:         TEST    = ~APPLY(.EQ,0) STARS
        !           392:         TEST    = ~APPLY(.EQ,1,1,1) STARS
        !           393:         TEST    = ~IDENT(APPLY(.TRIM,'ABC '),'ABC') STARS
        !           394: *
        !           395: *   FINAL PROCESSING
        !           396: *
        !           397:         OUTPUT  = '************************************************'
        !           398:         DIAGNOSTICS = 1000 - &TRACE
        !           399:         EQ(DIAGNOSTICS,0)                               :S(TERMINATE)
        !           400:         OUTPUT  = '****    NUMBER OF ERRORS DETECTED  '
        !           401: .           LPAD(DIAGNOSTICS,5) '    ****'
        !           402:         OUTPUT  = '**** E N D    O F     D I A G N O S T I C S ****'
        !           403:         OUTPUT  = '************************************************'
        !           404: .                                                       :(END)
        !           405: TERMINATE       OUTPUT  = '**** N O     E R R O R S    D E T E C T E D ****'
        !           406:         OUTPUT  = '**** E N D    O F     D I A G N O S T I C S ****'
        !           407:         OUTPUT  = '************************************************'
        !           408:                                                         :(END)
        !           409: *
        !           410: *   ERROR HANDLING ROUTINE
        !           411: *
        !           412: ERRORS  OUTPUT  = '****  ERROR AT '
        !           413: .           LPAD(&LASTNO,4)   '      &ERRTYPE = ' LPAD(&ERRTYPE,7,' ')
        !           414: .           ' ****'
        !           415:         OUTPUT  = '      &ERRTEXT = ' &ERRTEXT
        !           416:         DUMP(1)
        !           417:         &TRACE  = &TRACE - 1
        !           418:         SETEXIT(.ERRORS)                                :(CONTINUE)
        !           419: END

unix.superglobalmegacorp.com

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