annotate lispref/errors.texi @ 20279:69a6030e443a

(kill-region): Detect read-only text by getting an error trying to delete it. Handle the cases where we can, and can't, get the killed text from the undo list with much the same code.
author Karl Heuer <kwzh@gnu.org>
date Wed, 19 Nov 1997 21:36:56 +0000
parents 981e116b4ac6
children 66d807bdc5b4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 @c -*-texinfo-*-
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2 @c This is part of the GNU Emacs Lisp Reference Manual.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3 @c Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4 @c See the file elisp.texi for copying conditions.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5 @setfilename ../info/errors
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6 @node Standard Errors, Standard Buffer-Local Variables, GNU Emacs Internals, Top
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
7 @appendix Standard Errors
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
9 Here is the complete list of the error symbols in standard Emacs,
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10 grouped by concept. The list includes each symbol's message (on the
7600
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
11 @code{error-message} property of the symbol) and a cross reference to a
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 description of how the error can occur.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13
7600
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
14 Each error symbol has an @code{error-conditions} property that is a
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
15 list of symbols. Normally this list includes the error symbol itself
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16 and the symbol @code{error}. Occasionally it includes additional
7600
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
17 symbols, which are intermediate classifications, narrower than
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
18 @code{error} but broader than a single error symbol. For example, all
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
19 the errors in accessing files have the condition @code{file-error}.
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21 As a special exception, the error symbol @code{quit} does not have the
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22 condition @code{error}, because quitting is not considered an error.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24 @xref{Errors}, for an explanation of how errors are generated and
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25 handled.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27 @table @code
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 @item @var{symbol}
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29 @var{string}; @var{reference}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
30
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31 @item error
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32 @code{"error"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 @xref{Errors}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
35 @item quit
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
36 @code{"Quit"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
37 @xref{Quitting}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
38
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
39 @item args-out-of-range
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
40 @code{"Args out of range"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
41 @xref{Sequences Arrays Vectors}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
42
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
43 @item arith-error
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
44 @code{"Arithmetic error"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
45 See @code{/} and @code{%} in @ref{Numbers}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
46
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
47 @item beginning-of-buffer
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
48 @code{"Beginning of buffer"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
49 @xref{Motion}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
50
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
51 @item buffer-read-only
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
52 @code{"Buffer is read-only"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
53 @xref{Read Only Buffers}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
54
12098
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
55 @item cyclic-function-indirection
16736
981e116b4ac6 Minor cleanups for overfull hboxes.
Richard M. Stallman <rms@gnu.org>
parents: 12098
diff changeset
56 @code{"Symbol's chain of function indirections contains a@*
981e116b4ac6 Minor cleanups for overfull hboxes.
Richard M. Stallman <rms@gnu.org>
parents: 12098
diff changeset
57 loop"}@*
12098
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
58 @xref{Function Indirection}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
59
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
60 @item end-of-buffer
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
61 @code{"End of buffer"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
62 @xref{Motion}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
63
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
64 @item end-of-file
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
65 @code{"End of file during parsing"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
66 This is not a @code{file-error}.@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
67 @xref{Input Functions}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
68
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
69 @item file-error
7600
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
70 This error and its subcategories do not have error-strings, because the
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
71 error message is constructed from the data items alone when the error
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
72 condition @code{file-error} is present.@*
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
73 @xref{Files}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
74
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
75 @item file-locked
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
76 This is a @code{file-error}.@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
77 @xref{File Locks}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
78
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
79 @item file-already-exists
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
80 This is a @code{file-error}.@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
81 @xref{Writing to Files}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
82
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 @item file-supersession
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
84 This is a @code{file-error}.@*
7600
8bf07ff6a929 entered into RCS
Richard M. Stallman <rms@gnu.org>
parents: 2899
diff changeset
85 @xref{Modification Time}.
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
86
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
87 @item invalid-function
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
88 @code{"Invalid function"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
89 @xref{Classifying Lists}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
90
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
91 @item invalid-read-syntax
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
92 @code{"Invalid read syntax"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
93 @xref{Input Functions}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
94
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
95 @item invalid-regexp
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
96 @code{"Invalid regexp"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
97 @xref{Regular Expressions}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
98
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
99 @item no-catch
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
100 @code{"No catch for tag"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
101 @xref{Catch and Throw}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
102
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
103 @item search-failed
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
104 @code{"Search failed"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
105 @xref{Searching and Matching}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
106
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
107 @item setting-constant
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
108 @code{"Attempt to set a constant symbol"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
109 The values of the symbols @code{nil} and @code{t}
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
110 may not be changed.@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
111 @xref{Constant Variables, , Variables that Never Change}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
112
12098
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
113 @item undefined-color
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
114 @code{"Undefined color"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
115 @xref{Color Names}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
116
2899
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
117 @item void-function
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
118 @code{"Symbol's function definition is void"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
119 @xref{Function Cells}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
120
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
121 @item void-variable
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
122 @code{"Symbol's value as variable is void"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
123 @xref{Accessing Variables}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
124
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
125 @item wrong-number-of-arguments
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
126 @code{"Wrong number of arguments"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
127 @xref{Classifying Lists}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
128
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
129 @item wrong-type-argument
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
130 @code{"Wrong type argument"}@*
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
131 @xref{Type Predicates}.
462fc7e81e6e Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
132 @end table
12098
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
133
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
134 These error types, which are all classified as special cases of
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
135 @code{arith-error}, can occur on certain systems for invalid use of
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
136 mathematical functions.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
137
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
138 @table @code
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
139 @item domain-error
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
140 @code{"Arithmetic domain error"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
141 @xref{Math Functions}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
142
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
143 @item overflow-error
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
144 @code{"Arithmetic overflow error"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
145 @xref{Math Functions}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
146
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
147 @item range-error
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
148 @code{"Arithmetic range error"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
149 @xref{Math Functions}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
150
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
151 @item singularity-error
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
152 @code{"Arithmetic singularity error"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
153 @xref{Math Functions}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
154
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
155 @item underflow-error
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
156 @code{"Arithmetic underflow error"}@*
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
157 @xref{Math Functions}.
a6eb5f12b0f3 *** empty log message ***
Karl Heuer <kwzh@gnu.org>
parents: 7600
diff changeset
158 @end table