Commit | Line | Data |
---|---|---|
b8d4c8d0 GM |
1 | @c -*-texinfo-*- |
2 | @c This is part of the GNU Emacs Lisp Reference Manual. | |
4bb82fa8 | 3 | @c Copyright (C) 1990-1993, 1999, 2001-2012 Free Software Foundation, Inc. |
b8d4c8d0 | 4 | @c See the file elisp.texi for copying conditions. |
6336d8c3 | 5 | @setfilename ../../info/errors |
b8d4c8d0 GM |
6 | @node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top |
7 | @appendix Standard Errors | |
8 | @cindex standard errors | |
9 | ||
7e05b1ec | 10 | Here is a list of the more important error symbols in standard Emacs, |
b8d4c8d0 GM |
11 | grouped by concept. The list includes each symbol's message (on the |
12 | @code{error-message} property of the symbol) and a cross reference to a | |
13 | description of how the error can occur. | |
14 | ||
15 | Each error symbol has an @code{error-conditions} property that is a | |
16 | list of symbols. Normally this list includes the error symbol itself | |
17 | and the symbol @code{error}. Occasionally it includes additional | |
18 | symbols, which are intermediate classifications, narrower than | |
19 | @code{error} but broader than a single error symbol. For example, all | |
20 | the errors in accessing files have the condition @code{file-error}. If | |
21 | we do not say here that a certain error symbol has additional error | |
22 | conditions, that means it has none. | |
23 | ||
24 | As a special exception, the error symbol @code{quit} does not have the | |
25 | condition @code{error}, because quitting is not considered an error. | |
26 | ||
7e05b1ec GM |
27 | @c You can grep for "(put 'foo 'error-conditions ...) to find |
28 | @c examples defined in Lisp. Eg soap-client.el, sasl.el. | |
29 | Most of these error symbols are defined in C (mainly @file{data.c}), | |
30 | but some are defined in Lisp. For example, the file @file{userlock.el} | |
31 | defines the @code{file-locked} and @code{file-supersession} errors. | |
32 | Several of the specialized Lisp libraries distributed with Emacs | |
33 | define their own error symbols. We do not attempt to list of all | |
34 | those here. | |
35 | ||
b8d4c8d0 GM |
36 | @xref{Errors}, for an explanation of how errors are generated and |
37 | handled. | |
38 | ||
39 | @table @code | |
b8d4c8d0 GM |
40 | @item error |
41 | @code{"error"}@* | |
42 | @xref{Errors}. | |
43 | ||
44 | @item quit | |
45 | @code{"Quit"}@* | |
46 | @xref{Quitting}. | |
47 | ||
48 | @item args-out-of-range | |
49 | @code{"Args out of range"}@* | |
50 | This happens when trying to access an element beyond the range of a | |
51 | sequence or buffer.@* | |
52 | @xref{Sequences Arrays Vectors}, @xref{Text}. | |
53 | ||
54 | @item arith-error | |
55 | @code{"Arithmetic error"}@* | |
56 | @xref{Arithmetic Operations}. | |
57 | ||
58 | @item beginning-of-buffer | |
59 | @code{"Beginning of buffer"}@* | |
60 | @xref{Character Motion}. | |
61 | ||
62 | @item buffer-read-only | |
63 | @code{"Buffer is read-only"}@* | |
64 | @xref{Read Only Buffers}. | |
65 | ||
4bb82fa8 GM |
66 | @item circular-list |
67 | @code{"List contains a loop"}@* | |
7e05b1ec GM |
68 | This happens when some operations (e.g. resolving face names) |
69 | encounter circular structures.@* | |
70 | @xref{Circular Objects}. | |
71 | ||
72 | @item cl-assertion-failed | |
73 | @code{"Assertion failed"}@* | |
74 | This happens when the @code{assert} macro fails a test.@* | |
75 | @xref{Assertions,,, cl, Common Lisp Extensions}. | |
4bb82fa8 | 76 | |
b8d4c8d0 GM |
77 | @item coding-system-error |
78 | @code{"Invalid coding system"}@* | |
79 | @xref{Lisp and Coding Systems}. | |
80 | ||
81 | @item cyclic-function-indirection | |
5338dc0b | 82 | @code{"Symbol's chain of function indirections contains a loop"}@* |
b8d4c8d0 GM |
83 | @xref{Function Indirection}. |
84 | ||
85 | @item cyclic-variable-indirection | |
5338dc0b | 86 | @code{"Symbol's chain of variable indirections contains a loop"}@* |
b8d4c8d0 GM |
87 | @xref{Variable Aliases}. |
88 | ||
4bb82fa8 GM |
89 | @item dbus-error |
90 | @code{"D-Bus error"}@* | |
91 | This is only defined if Emacs was compiled with D-Bus support.@* | |
92 | @xref{Errors and Events,,, dbus, D-Bus integration in Emacs}. | |
93 | ||
b8d4c8d0 GM |
94 | @item end-of-buffer |
95 | @code{"End of buffer"}@* | |
96 | @xref{Character Motion}. | |
97 | ||
98 | @item end-of-file | |
99 | @code{"End of file during parsing"}@* | |
100 | Note that this is not a subcategory of @code{file-error}, | |
101 | because it pertains to the Lisp reader, not to file I/O.@* | |
102 | @xref{Input Functions}. | |
103 | ||
104 | @item file-already-exists | |
105 | This is a subcategory of @code{file-error}.@* | |
106 | @xref{Writing to Files}. | |
107 | ||
108 | @item file-date-error | |
109 | This is a subcategory of @code{file-error}. It occurs when | |
110 | @code{copy-file} tries and fails to set the last-modification time of | |
111 | the output file.@* | |
112 | @xref{Changing Files}. | |
113 | ||
114 | @item file-error | |
115 | We do not list the error-strings of this error and its subcategories, | |
116 | because the error message is normally constructed from the data items | |
117 | alone when the error condition @code{file-error} is present. Thus, | |
118 | the error-strings are not very relevant. However, these error symbols | |
119 | do have @code{error-message} properties, and if no data is provided, | |
120 | the @code{error-message} property @emph{is} used.@* | |
121 | @xref{Files}. | |
122 | ||
7e05b1ec GM |
123 | @c jka-compr.el |
124 | @item compression-error | |
125 | This is a subcategory of @code{file-error}, which results from | |
126 | problems handling a compressed file.@* | |
127 | @xref{How Programs Do Loading}. | |
128 | ||
129 | @c userlock.el | |
b8d4c8d0 GM |
130 | @item file-locked |
131 | This is a subcategory of @code{file-error}.@* | |
132 | @xref{File Locks}. | |
133 | ||
7e05b1ec | 134 | @c userlock.el |
b8d4c8d0 GM |
135 | @item file-supersession |
136 | This is a subcategory of @code{file-error}.@* | |
137 | @xref{Modification Time}. | |
138 | ||
7e05b1ec | 139 | @c net/ange-ftp.el |
b8d4c8d0 GM |
140 | @item ftp-error |
141 | This is a subcategory of @code{file-error}, which results from problems | |
142 | in accessing a remote file using ftp.@* | |
143 | @xref{Remote Files,,, emacs, The GNU Emacs Manual}. | |
144 | ||
145 | @item invalid-function | |
146 | @code{"Invalid function"}@* | |
147 | @xref{Function Indirection}. | |
148 | ||
149 | @item invalid-read-syntax | |
150 | @code{"Invalid read syntax"}@* | |
151 | @xref{Printed Representation}. | |
152 | ||
153 | @item invalid-regexp | |
154 | @code{"Invalid regexp"}@* | |
155 | @xref{Regular Expressions}. | |
156 | ||
7e05b1ec | 157 | @c simple.el |
b8d4c8d0 GM |
158 | @item mark-inactive |
159 | @code{"The mark is not active now"}@* | |
160 | @xref{The Mark}. | |
161 | ||
162 | @item no-catch | |
163 | @code{"No catch for tag"}@* | |
164 | @xref{Catch and Throw}. | |
165 | ||
4bb82fa8 | 166 | @ignore |
7e05b1ec | 167 | @c Not actually used for anything? Probably definition should be removed. |
4bb82fa8 GM |
168 | @item protected-field |
169 | @code{"Attempt to modify a protected field"} | |
170 | @end ignore | |
171 | ||
b8d4c8d0 GM |
172 | @item scan-error |
173 | @code{"Scan error"}@* | |
174 | This happens when certain syntax-parsing functions | |
175 | find invalid syntax or mismatched parentheses.@* | |
176 | @xref{List Motion}, and @ref{Parsing Expressions}. | |
177 | ||
178 | @item search-failed | |
179 | @code{"Search failed"}@* | |
180 | @xref{Searching and Matching}. | |
181 | ||
182 | @item setting-constant | |
183 | @code{"Attempt to set a constant symbol"}@* | |
184 | The values of the symbols @code{nil} and @code{t}, | |
185 | and any symbols that start with @samp{:}, | |
186 | may not be changed.@* | |
187 | @xref{Constant Variables, , Variables that Never Change}. | |
188 | ||
7e05b1ec | 189 | @c simple.el |
b8d4c8d0 GM |
190 | @item text-read-only |
191 | @code{"Text is read-only"}@* | |
192 | This is a subcategory of @code{buffer-read-only}.@* | |
193 | @xref{Special Properties}. | |
194 | ||
195 | @item undefined-color | |
196 | @code{"Undefined color"}@* | |
197 | @xref{Color Names}. | |
198 | ||
199 | @item void-function | |
200 | @code{"Symbol's function definition is void"}@* | |
201 | @xref{Function Cells}. | |
202 | ||
203 | @item void-variable | |
204 | @code{"Symbol's value as variable is void"}@* | |
205 | @xref{Accessing Variables}. | |
206 | ||
207 | @item wrong-number-of-arguments | |
208 | @code{"Wrong number of arguments"}@* | |
209 | @xref{Classifying Lists}. | |
210 | ||
211 | @item wrong-type-argument | |
212 | @code{"Wrong type argument"}@* | |
213 | @xref{Type Predicates}. | |
214 | @end table | |
215 | ||
4bb82fa8 | 216 | The following kinds of error, which are classified as special cases of |
b8d4c8d0 | 217 | @code{arith-error}, can occur on certain systems for invalid use of |
4bb82fa8 | 218 | mathematical functions. @xref{Math Functions}. |
b8d4c8d0 GM |
219 | |
220 | @table @code | |
221 | @item domain-error | |
4bb82fa8 | 222 | @code{"Arithmetic domain error"} |
b8d4c8d0 GM |
223 | |
224 | @item overflow-error | |
225 | @code{"Arithmetic overflow error"}@* | |
4bb82fa8 | 226 | This is a subcategory of @code{domain-error}. |
b8d4c8d0 GM |
227 | |
228 | @item range-error | |
4bb82fa8 | 229 | @code{"Arithmetic range error"} |
b8d4c8d0 GM |
230 | |
231 | @item singularity-error | |
232 | @code{"Arithmetic singularity error"}@* | |
4bb82fa8 | 233 | This is a subcategory of @code{domain-error}. |
b8d4c8d0 GM |
234 | |
235 | @item underflow-error | |
236 | @code{"Arithmetic underflow error"}@* | |
4bb82fa8 | 237 | This is a subcategory of @code{domain-error}. |
b8d4c8d0 | 238 | @end table |