[gforth] / gforth / errors.fs  

gforth: gforth/errors.fs


1 : pazsan 1.1 \ Load in error strings
2 :    
3 : anton 1.10 \ Copyright (C) 1995,1996,1997,1998,1999 Free Software Foundation, Inc.
4 : pazsan 1.2
5 :     \ This file is part of Gforth.
6 :    
7 :     \ Gforth is free software; you can redistribute it and/or
8 :     \ modify it under the terms of the GNU General Public License
9 :     \ as published by the Free Software Foundation; either version 2
10 :     \ of the License, or (at your option) any later version.
11 :    
12 :     \ This program is distributed in the hope that it will be useful,
13 :     \ but WITHOUT ANY WARRANTY; without even the implied warranty of
14 :     \ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 :     \ GNU General Public License for more details.
16 :    
17 :     \ You should have received a copy of the GNU General Public License
18 :     \ along with this program; if not, write to the Free Software
19 : anton 1.11 \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
20 : pazsan 1.2
21 : jwilke 1.4 [IFUNDEF] linked \ defined by chains.fs?!
22 : pazsan 1.1 : linked here over @ a, swap ! ;
23 : jwilke 1.4 [THEN]
24 : pazsan 1.1
25 : anton 1.5 : errstring ( addr u n -- )
26 :     ErrLink linked
27 :     ,
28 :     string, align ;
29 :    
30 : pazsan 1.1 decimal
31 :    
32 : anton 1.5 -1 s" Aborted" rot errstring
33 :     -3 s" Stack overflow" rot errstring
34 :     -4 s" Stack underflow" rot errstring
35 :     -5 s" Return stack overflow" rot errstring
36 : anton 1.8 -6 s" Return stack underflow" rot errstring
37 : anton 1.5 -7 s" Do-loops nested too deeply" rot errstring
38 :     -8 s" Dictionary overflow" rot errstring
39 :     -9 s" Invalid memory address" rot errstring
40 :     -10 s" Division by zero" rot errstring
41 :     -11 s" Result out of range" rot errstring
42 :     -12 s" Argument type mismatch" rot errstring
43 :     -13 s" Undefined word" rot errstring
44 :     -14 s" Interpreting a compile-only word" rot errstring
45 :     -15 s" Invalid FORGET" rot errstring
46 :     -16 s" Attempt to use zero-length string as a name" rot errstring
47 :     -17 s" Pictured numeric ouput string overflow" rot errstring
48 :     -18 s" Parsed string overflow" rot errstring
49 :     -19 s" Word name too long" rot errstring
50 :     -20 s" Write to a read-only location" rot errstring
51 :     -21 s" Unsupported operation" rot errstring
52 :     -22 s" Control structure mismatch" rot errstring
53 :     -23 s" Address alignment exception" rot errstring
54 :     -24 s" Invalid numeric argument" rot errstring
55 :     -25 s" Return stack imbalance" rot errstring
56 :     -26 s" Loop parameters unavailable" rot errstring
57 :     -27 s" Invalid recursion" rot errstring
58 :     -28 s" User interrupt" rot errstring
59 :     -29 s" Compiler nesting" rot errstring
60 :     -30 s" Obsolescent feature" rot errstring
61 :     -31 s" >BODY used on non-CREATEd definition" rot errstring
62 :     -32 s" Invalid name argument" rot errstring
63 :     -33 s" Block read exception" rot errstring
64 :     -34 s" Block write exception" rot errstring
65 :     -35 s" Invalid block number" rot errstring
66 :     -36 s" Invalid file position" rot errstring
67 :     -37 s" File I/O exception" rot errstring
68 :     -38 s" Non-existent file" rot errstring
69 :     -39 s" Unexpected end of file" rot errstring
70 :     -40 s" Invalid BASE for floating point conversion" rot errstring
71 :     -41 s" Loss of precision" rot errstring
72 :     -42 s" Floating-point divide by zero" rot errstring
73 :     -43 s" Floating-point result out of range" rot errstring
74 :     -44 s" Floating-point stack overflow" rot errstring
75 :     -45 s" Floating-point stack underflow" rot errstring
76 :     -46 s" Floating-point invalid argument" rot errstring
77 :     -47 s" Compilation word list deleted" rot errstring
78 :     -48 s" invalid POSTPONE" rot errstring
79 :     -49 s" Search-order overflow" rot errstring
80 :     -50 s" Search-order underflow" rot errstring
81 :     -51 s" Compilation word list changed" rot errstring
82 :     -52 s" Control-flow stack overflow" rot errstring
83 :     -53 s" Exception stack overflow" rot errstring
84 :     -54 s" Floating-point underflow" rot errstring
85 :     -55 s" Floating-point unidentified fault" rot errstring
86 :     -56 s" QUIT" rot errstring
87 :     -57 s" Error in sending or receiving a character" rot errstring
88 :     -58 s" [IF], [ELSE], [THEN] error" rot errstring
89 : anton 1.12
90 :     \ Gforth's errors:
91 :    
92 :     -2048 s" Cannot tick compile-only word (try COMP' ... DROP)" rot errstring
93 : anton 1.13 -2049 s" Write to broken pipe" rot errstring
94 : anton 1.12
95 : anton 1.13 variable next-exception -2050 next-exception !
96 : anton 1.12
97 :     : exception ( addr u -- n ) \ exception- gforth
98 :     \G @var{n} is a previously unused @code{throw} value in the range
99 :     \G (-4095...-256). Consecutive calls to @code{exception} return
100 :     \G consecutive decreasing numbers. Gforth uses the string
101 :     \G @var{addr u} as an error message.
102 :     next-exception @ errstring
103 :     next-exception @
104 :     -1 next-exception +! ;
105 :    
106 :    

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help