%ZTER ; ISC-SF.SEA/JLI - KERNEL ERROR TRAP TO LOG ERRORS ;08/02/2011
Source file <ZTER.m>
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| ETXT() | ;Return the Text of the error
|
|
| UNWIND | ;Unwind stack for new error trap. Called by app code.
|
|
| SUBS | ;Save sub-nodes
|
|
| ERR | ;Handle an error in %ZTER
|
|
| UCI() | ;Return the UCI, Changed to Box:Volume p431
|
|
| POST | ;Do the post-init
|
|
| LIN | ;Find the line of the error
|
|
| UNW | ||
| APPERROR(%ZTERNM) | ;Caller gives name to Error. p431
|
|
| ECNT | ;Add to the error count
|
|
| FMT(%ZTE) | ;Format the error text
|
|
| ENC(%ZT1) | ;Encode a string with control char in \027 format
|
|
| ABORT | ;Pop the stack all the way.
|
|
| EXIT | ;
|
|
| GLOB | ; save off a list of global subtrees, %ZT is passed in subscripted by name
; %ZTERCNT passed in to count the nodes we traverse ; %ZTERNOD the nodes through which we $QUERY ; %ZTERNAM the names of the global subtrees we're saving ; %ZTEROPN is %ZTERNAM, evaluated, without close paren for $PIECEing |
|
| SCREEN(ERR,%ZT3) | ;Screen out certain errors.
|
|
| VAR | ||
| NEWERR() | ;Does this OS support the M95 error trapping
|
|
| Z1 | ||
| Z2 | ||
| SAVE(%ZTERN,%ZTERV) | ;Save name and value into global, use special variables
|
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^%ZOSF("LOAD" | LIN+5 |
| ^%ZOSF("OS" | Z2+17, Z2+22 |
| ^%ZOSF("TEST" | LIN+4 |
| ^%ZTER(1 - [#3.075] | Z1+4, Z1+5, Z2, Z2+1, Z2+2*, Z2+3*, Z2+4, Z2+6, Z2+28, Z2+29* , ERR+1* |
| ^%ZTER(2 - [#3.076] | LIN+10, SCREEN+14, SCREEN+17, SCREEN+19 |
| ^%ZTER(3.077 - [#3.077] | ECNT+2, ECNT+3, ECNT+5, ECNT+6, ECNT+7*, ECNT+9, ECNT+11*, ECNT+12*, ECNT+13*, SCREEN+6 |
| ^TMP("$ZE" | %ZTER+3*, %ZTER+4*, %ZTER+5*, %ZTER+6*, %ZTER+7, Z1+1, Z2+9, EXIT+3, EXIT+4!, APPERROR+1* , APPERROR+2*, APPERROR+3*, APPERROR+4* |
| ^TMP($J | LIN+3!, LIN+6, LIN+7, LIN+8! |
| ^XTV(8989.3 - [#8989.3] | SCREEN+9 |
| Name | Line Occurrences |
|---|---|
| $$ENC | Z2+9 |
| $$ETXT | Z2+13 |
| $$FMT | ECNT+1, SCREEN+4 |
| $$SCREEN | Z1+2 |
| $$UCI | Z2+10 |
| ECNT | EXIT+1 |
| EXIT | Z1+2 |
| GLOB | Z2+26 |
| SAVE | Z2+16, Z2+18, Z2+20, VAR, SUBS+4 |
| SUBS | Z2+25 |
| VAR | Z2+25 |
| Z1 | APPERROR+6 |
| Z2 | Z2 |
| Name | Field # of Occurrence |
|---|---|
| ^( | Z2+28*, LIN+6, LIN+10 |
| ^("GR" | Z2+5* |
| ^("J" | Z2+11* |
| ^("L" | SAVE+4* |
| ^("ZE" | Z2+5* |
| ^(0 | ECNT+5*, ECNT+9*, SCREEN+14 |
| ^(2 | SCREEN+14 |
| ^(3 | SCREEN+19* |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| %ZT | EXIT+7! |
| %ZT( | GLOB+7 |
| %ZT("^XUTL(""XQ"",$J)" | Z1+1* |
| %ZT1 | ENC~, ENC+2 |
| %ZT3 | SCREEN~, SCREEN+18 |
| %ZTA | SCREEN+1~, SCREEN+7* |
| %ZTB | ENC+1~*, ENC+2*, ENC+3 |
| %ZTC | ENC+1~, ENC+2* |
| %ZTE | FMT~, FMT+1*, FMT+2*, FMT+3*, FMT+4, SCREEN+1~, SCREEN+4*, SCREEN+6, SCREEN+11*, SCREEN+14* , SCREEN+17*, SCREEN+19 |
| %ZTER111 | EXIT+5! |
| %ZTER112 | EXIT+5! |
| %ZTER11A | Z2+22!, EXIT+5!, ECNT+1*, ECNT+2, ECNT+3, ECNT+7 |
| %ZTER11B | Z2+22!, EXIT+5! |
| %ZTER11C | Z2+1*, Z2+2, Z2+7! |
| %ZTER11D | EXIT+5! |
| %ZTER11H | EXIT+5!, ECNT+10*, ECNT+11 |
| %ZTER11I | Z2+10*, Z2+11, EXIT+5! |
| %ZTER11L | EXIT+5! |
| %ZTER11N | Z1+5*, Z2*, Z2+2, Z2+3, Z2+4, Z2+5, Z2+29, EXIT+5!, ERR+1, ECNT+1* , ECNT+3*, ECNT+4, ECNT+5*, ECNT+6*, ECNT+7, ECNT+9, ECNT+11, ECNT+12, ECNT+13 |
| %ZTER11Q | EXIT+5! |
| %ZTER11S | EXIT+5!, SUBS+1*, SUBS+3*, SUBS+4*, ECNT+10*, ECNT+11 |
| %ZTER11Z | EXIT+5! |
| %ZTER12A | Z2+7!, Z2+9*, Z2+12, EXIT+6! |
| %ZTER12B | Z2+7!, Z2+9*, Z2+12, EXIT+6! |
| %ZTER13A | %ZTER+10*, EXIT+2, EXIT+6! |
| >> %ZTERAPP | Z2+5, APPERROR+5* |
| %ZTERCNT | Z2+14*, Z2+27, EXIT+7!, SAVE+1*, SAVE+2, SAVE+4, SAVE+6, GLOB+12*, GLOB+13, GLOB+14 |
| %ZTERH1 | Z1+4*, Z1+5, Z2, Z2+1, Z2+2, Z2+3, Z2+4, Z2+6, Z2+28, Z2+29 , EXIT+7!, ERR+1 |
| %ZTERI | SAVE+5~, SAVE+6* |
| %ZTERLGR | %ZTER+9, Z1+1*, Z2+5! |
| %ZTERN | SAVE~, SAVE+1 |
| %ZTERNAM | GLOB+5~, GLOB+6*, GLOB+7*, GLOB+8, GLOB+13 |
| %ZTERNM | APPERROR~, APPERROR+2 |
| %ZTERNOD | GLOB+5~, GLOB+8*, GLOB+9, GLOB+11*, GLOB+13, GLOB+14 |
| %ZTEROPN | GLOB+5~, GLOB+9*, GLOB+11, GLOB+13 |
| %ZTERROR | Z2+13*, LIN+10*, EXIT+6! |
| %ZTERRT | Z2+4*, Z2+5, Z2+11, Z2+12, Z2+19*, Z2+27, LIN+9, EXIT+7!, SAVE+1, SAVE+2 , SAVE+4, SAVE+6, GLOB+13, GLOB+14 |
| %ZTERSUB | EXIT+6!, SUBS+2* |
| %ZTERV | SAVE~, SAVE+2, SAVE+4, SAVE+6* |
| %ZTERVAP | EXIT+6!, SUBS+2* |
| %ZTERVAR | Z2+24*, Z2+25*, EXIT+6!, VAR, SUBS+1, SUBS+2, SUBS+3 |
| %ZTERX | LIN+1*, LIN+2, LIN+5, LIN+6, LIN+7, EXIT+7! |
| %ZTERY | LIN+1*, LIN+4, LIN+5*, LIN+6, LIN+7, EXIT+7! |
| %ZTERZE | Z1+1*, Z1+2, Z2+5, LIN+1, EXIT+6!, ETXT+1, ECNT+1 |
| %ZTH | SCREEN+1~, SCREEN+4*, SCREEN+6 |
| %ZTI | ENC+1~, ENC+2*, SCREEN+1~, SCREEN+6*, SCREEN+11*, SCREEN+13, SCREEN+14*, SCREEN+17, SCREEN+19 |
| %ZTJ | SCREEN+1~, SCREEN+6*, SCREEN+7*, SCREEN+9, SCREEN+13*, SCREEN+14, SCREEN+18 |
| %ZTR | SCREEN+1~, SCREEN+6*, SCREEN+7 |
| %ZTZLIN | LIN+6*, LIN+7*, LIN+9! |
| >> D0 | %ZTER+9 |
| >> DA | %ZTER+9 |
| >> DI | %ZTER+9 |
| >> DIC | %ZTER+9 |
| >> DIE | %ZTER+9 |
| DIF | LIN+3~, LIN+5* |
| >> DISYS | %ZTER+9 |
| DT | %ZTER+9 |
| DUZ | %ZTER+9 |
| ERR | SCREEN~, SCREEN+1*, SCREEN+2, SCREEN+4, SCREEN+14 |
| IO | %ZTER+9 |
| IO("ZIO" | Z2+12 |
| >> IOBS | %ZTER+9 |
| IOF | %ZTER+9 |
| IOM | %ZTER+9 |
| ION | %ZTER+9 |
| >> IOS | %ZTER+9 |
| IOSL | %ZTER+9 |
| IOST | %ZTER+9 |
| >> IOT | %ZTER+9 |
| >> IOXY | %ZTER+9 |
| U | %ZTER+9 |
| X | LIN+3~, LIN+4*, LIN+6*, LIN+7* |
| XCNP | LIN+3~, LIN+5* |
| >> XQAUDIT | %ZTER+9 |
| >> XQDIC | %ZTER+9 |
| >> XQPSM | %ZTER+9 |
| >> XQPT | %ZTER+9 |
| >> XQVOL | %ZTER+9 |
| >> XQXFLG | %ZTER+9 |
| >> XQY | %ZTER+9 |
| >> XQY0 | %ZTER+9 |
| >> XRTL | %ZTER+9 |
| XUALLOC | %ZTER+8, Z1! |
| Y | UCI+1~*, UCI+2*, UCI+3 |
| >> ZTQUEUED | %ZTER+9 |
| >> ZTREQ | %ZTER+9 |
| >> ZTSTOP | %ZTER+9 |