new version
[emacs.git] / lispref / errors.texi
blobaa3dde754d637fa231b0c2ecc33c5149d7befad9
1 @c -*-texinfo-*-
2 @c This is part of the GNU Emacs Lisp Reference Manual.
3 @c Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation, Inc. 
4 @c See the file elisp.texi for copying conditions.
5 @setfilename ../info/errors
6 @node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top
7 @appendix Standard Errors
9   Here is the complete list of the error symbols in standard Emacs,
10 grouped by concept.  The list includes each symbol's message (on the
11 @code{error-message} property of the symbol) and a cross reference to a
12 description of how the error can occur.
14   Each error symbol has an @code{error-conditions} property that is a
15 list of symbols.  Normally this list includes the error symbol itself
16 and the symbol @code{error}.  Occasionally it includes additional
17 symbols, which are intermediate classifications, narrower than
18 @code{error} but broader than a single error symbol.  For example, all
19 the errors in accessing files have the condition @code{file-error}.
21   As a special exception, the error symbol @code{quit} does not have the
22 condition @code{error}, because quitting is not considered an error.
24   @xref{Errors}, for an explanation of how errors are generated and
25 handled.
27 @table @code
28 @item @var{symbol}
29 @var{string}; @var{reference}.
31 @item error
32 @code{"error"}@*
33 @xref{Errors}.
35 @item quit
36 @code{"Quit"}@*
37 @xref{Quitting}.
39 @item args-out-of-range
40 @code{"Args out of range"}@*
41 @xref{Sequences Arrays Vectors}.
43 @item arith-error
44 @code{"Arithmetic error"}@*
45 See @code{/} and @code{%} in @ref{Numbers}.
47 @item beginning-of-buffer
48 @code{"Beginning of buffer"}@*
49 @xref{Motion}.
51 @item buffer-read-only
52 @code{"Buffer is read-only"}@*
53 @xref{Read Only Buffers}.
55 @item cyclic-function-indirection
56 @code{"Symbol's chain of function indirections contains a@*
57 loop"}@*
58 @xref{Function Indirection}.
60 @item end-of-buffer
61 @code{"End of buffer"}@*
62 @xref{Motion}.
64 @item end-of-file
65 @code{"End of file during parsing"}@*
66 This is not a @code{file-error}.@*
67 @xref{Input Functions}.
69 @item file-error
70 This error and its subcategories do not have error-strings, because the
71 error message is constructed from the data items alone when the error
72 condition @code{file-error} is present.@*
73 @xref{Files}.
75 @item file-locked     
76 This is a @code{file-error}.@*
77 @xref{File Locks}.
79 @item file-already-exists
80 This is a @code{file-error}.@*
81 @xref{Writing to Files}.
83 @item file-supersession
84 This is a @code{file-error}.@*
85 @xref{Modification Time}.
87 @item invalid-function
88 @code{"Invalid function"}@*
89 @xref{Classifying Lists}.
91 @item invalid-read-syntax
92 @code{"Invalid read syntax"}@*
93 @xref{Input Functions}.
95 @item invalid-regexp
96 @code{"Invalid regexp"}@*
97 @xref{Regular Expressions}.
99 @item no-catch
100 @code{"No catch for tag"}@*
101 @xref{Catch and Throw}.
103 @item search-failed
104 @code{"Search failed"}@*
105 @xref{Searching and Matching}.
107 @item setting-constant
108 @code{"Attempt to set a constant symbol"}@* 
109 The values of the symbols @code{nil} and @code{t}
110 may not be changed.@*
111 @xref{Constant Variables, , Variables that Never Change}.
113 @item undefined-color
114 @code{"Undefined color"}@*
115 @xref{Color Names}.
117 @item void-function
118 @code{"Symbol's function definition is void"}@*
119 @xref{Function Cells}.
121 @item void-variable
122 @code{"Symbol's value as variable is void"}@*
123 @xref{Accessing Variables}.
125 @item wrong-number-of-arguments
126 @code{"Wrong number of arguments"}@*
127 @xref{Classifying Lists}.
129 @item wrong-type-argument
130 @code{"Wrong type argument"}@*
131 @xref{Type Predicates}.
132 @end table
134   These error types, which are all classified as special cases of
135 @code{arith-error}, can occur on certain systems for invalid use of
136 mathematical functions.
138 @table @code
139 @item domain-error
140 @code{"Arithmetic domain error"}@*
141 @xref{Math Functions}.
143 @item overflow-error
144 @code{"Arithmetic overflow error"}@*
145 @xref{Math Functions}.
147 @item range-error
148 @code{"Arithmetic range error"}@*
149 @xref{Math Functions}.
151 @item singularity-error
152 @code{"Arithmetic singularity error"}@*
153 @xref{Math Functions}.
155 @item underflow-error
156 @code{"Arithmetic underflow error"}@*
157 @xref{Math Functions}.
158 @end table