File:  [gforth] / gforth / Attic / errore.fs
Revision 1.3: download - view: text, annotated - select for diffs
Mon Feb 6 18:14:32 1995 UTC (24 years, 8 months ago) by anton
Branches: MAIN
CVS tags: HEAD
The bodies of words are now maxaligned

    1: \ ERRORE.FS English error strings                      9may93jaw
    2: 
    3: \ The errors are defined by a linked list, for easy adding
    4: \ and deleting. Speed is not neccassary at this point.
    5: 
    6: AVARIABLE ErrLink              \ Linked list entry point
    7: 0 ErrLink !
    8: 
    9: : ERR" ( n -- )
   10:        ErrLink linked
   11:        ,
   12:        [char] " word count
   13:        string, align ;
   14: 
   15: decimal
   16: 
   17: -1 ERR" Aborted"
   18: ErrLink @ unlock reloff lock \ make sure that the terminating 0 is not relocated
   19: -3 ERR" Stack overflow"                 -4 ERR" Stack underflow"
   20: -5 ERR" Return stack overflow"          -6 ERR" Return stack undeflow"
   21: -7 ERR" Do-loops nested too deeply"     -8 ERR" Dictionary overflow"
   22: -9 ERR" Invalid memory address"         -10 ERR" Division by zero"
   23: -11 ERR" Result out of range"           -12 ERR" Argument type mismatch"
   24: -13 ERR" Undefined word"                -14 ERR" Interpreting a compile-only word"
   25: -15 ERR" Invalid FORGET"                -16 ERR" Attempt to use zero-length string as a name"
   26: -17 ERR" Pictured numeric ouput string overflow"
   27: -18 ERR" Parsed string overflow"        -19 ERR" Word name too long"
   28: -20 ERR" Write to a read-only location" -21 ERR" Unsupported operation"
   29: -22 ERR" Control structure mismatch"    -23 ERR" Address alignment exception"
   30: -24 ERR" Invalid numeric argument"      -25 ERR" Return stack imbalance"
   31: -26 ERR" Loop parameters unavailable"   -27 ERR" Invalid recursion"
   32: -28 ERR" User interupt"                 -29 ERR" Compiler nesting"
   33: -30 ERR" Obsolescent feature"           -31 ERR" >BODY used on non-CREATEd definition"
   34: -32 ERR" Invalid name argument"         -33 ERR" Block read exception"
   35: -34 ERR" Block write exception"         -35 ERR" Invalid block number"
   36: -36 ERR" Invalid file position"         -37 ERR" File I/O exception"
   37: -38 ERR" Non-existent file"             -39 ERR" Unexpected end of file"
   38: -40 ERR" Invalid BASE for floating point conversion"
   39: -41 ERR" Loss of precision"             -42 ERR" Floating-point divide by zero"
   40: -43 ERR" Floating-point result out of range"
   41: -44 ERR" Floating-point stack overflow" -45 ERR" Floating-point stack underflow"
   42: -46 ERR" Floating-point invalid argument"
   43: -47 ERR" Compilation word list deleted" -48 ERR" invalid POSTPONE"
   44: -49 ERR" Search-order overflow"         -50 ERR" Search-order underflow"
   45: -51 ERR" Compilation word list changed" -52 ERR" Control-flow stack overflow"
   46: -53 ERR" Exception stack overflow"      -54 ERR" Floating-point underflow"
   47: -55 ERR" Floating-point unidentified fault"
   48: -56 ERR" QUIT"                          -57 ERR" Error in sending or receiving a character"
   49: -58 ERR" [IF], [ELSE], [THEN] error"
   50: \ signals: ( We list them all, execpt those already present, just in case )
   51: -256 ERR" Hangup signal"
   52: -257 ERR" Quit signal"
   53: -258 ERR" Illegal Instruction"
   54: -259 ERR" Trace Trap"
   55: -260 ERR" IOT instruction"
   56: -261 ERR" EMT instruction" \ abort() call?
   57: -262 ERR" Kill signal" \ cannot be caught but so what
   58: -263 ERR" Bad arg to system call"
   59: -264 ERR" Broken pipe"
   60: -265 ERR" Alarm signal"
   61: -266 ERR" Terminate signal"
   62: -267 ERR" User signal 1"
   63: -268 ERR" User signal 2"
   64: 
   65: : .error ( n -- )
   66:         cr ." Error: "
   67:         ErrLink
   68:         BEGIN @ dup
   69:         WHILE
   70:               2dup cell+ @ =
   71:               IF 2 cells + count type drop exit THEN
   72:         REPEAT
   73:         drop . ;
   74: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>