123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- @c -*-texinfo-*-
- @c This is part of the GNU Emacs Lisp Reference Manual.
- @c Copyright (C) 1990-1993, 1999, 2001-2015 Free Software Foundation,
- @c Inc.
- @c See the file elisp.texi for copying conditions.
- @node Standard Errors
- @appendix Standard Errors
- @cindex standard errors
- Here is a list of the more important error symbols in standard Emacs, grouped
- by concept. The list includes each symbol's message and a cross reference
- to a description of how the error can occur.
- Each error symbol has an set of parent error conditions that is a
- list of symbols. Normally this list includes the error symbol itself
- and the symbol @code{error}. Occasionally it includes additional
- symbols, which are intermediate classifications, narrower than
- @code{error} but broader than a single error symbol. For example, all
- the errors in accessing files have the condition @code{file-error}. If
- we do not say here that a certain error symbol has additional error
- conditions, that means it has none.
- As a special exception, the error symbol @code{quit} does not have the
- condition @code{error}, because quitting is not considered an error.
- Most of these error symbols are defined in C (mainly @file{data.c}),
- but some are defined in Lisp. For example, the file @file{userlock.el}
- defines the @code{file-locked} and @code{file-supersession} errors.
- Several of the specialized Lisp libraries distributed with Emacs
- define their own error symbols. We do not attempt to list of all
- those here.
- @xref{Errors}, for an explanation of how errors are generated and
- handled.
- @table @code
- @item error
- The message is @samp{error}. @xref{Errors}.
- @item quit
- The message is @samp{Quit}. @xref{Quitting}.
- @item args-out-of-range
- The message is @samp{Args out of range}. This happens when trying to
- access an element beyond the range of a sequence, buffer, or other
- container-like object. @xref{Sequences Arrays Vectors}, and
- @xref{Text}.
- @item arith-error
- The message is @samp{Arithmetic error}. This occurs when trying to
- perform integer division by zero. @xref{Numeric Conversions}, and
- @xref{Arithmetic Operations}.
- @item beginning-of-buffer
- The message is @samp{Beginning of buffer}. @xref{Character Motion}.
- @item buffer-read-only
- The message is @samp{Buffer is read-only}. @xref{Read Only Buffers}.
- @item circular-list
- The message is @samp{List contains a loop}. This happens when a
- circular structure is encountered. @xref{Circular Objects}.
- @item cl-assertion-failed
- The message is @samp{Assertion failed}. This happens when the
- @code{cl-assert} macro fails a test. @xref{Assertions,,, cl, Common Lisp
- Extensions}.
- @item coding-system-error
- The message is @samp{Invalid coding system}. @xref{Lisp and Coding
- Systems}.
- @item cyclic-function-indirection
- The message is @samp{Symbol's chain of function indirections contains
- a loop}. @xref{Function Indirection}.
- @item cyclic-variable-indirection
- The message is @samp{Symbol's chain of variable indirections contains
- a loop}. @xref{Variable Aliases}.
- @item dbus-error
- The message is @samp{D-Bus error}. This is only defined if Emacs was
- compiled with D-Bus support. @xref{Errors and Events,,, dbus, D-Bus
- integration in Emacs}.
- @item end-of-buffer
- The message is @samp{End of buffer}. @xref{Character Motion}.
- @item end-of-file
- The message is @samp{End of file during parsing}. Note that this is
- not a subcategory of @code{file-error}, because it pertains to the
- Lisp reader, not to file I/O@. @xref{Input Functions}.
- @item file-already-exists
- This is a subcategory of @code{file-error}. @xref{Writing to Files}.
- @item file-date-error
- This is a subcategory of @code{file-error}. It occurs when
- @code{copy-file} tries and fails to set the last-modification time of
- the output file. @xref{Changing Files}.
- @item file-error
- We do not list the error-strings of this error and its subcategories,
- because the error message is normally constructed from the data items
- alone when the error condition @code{file-error} is present. Thus,
- the error-strings are not very relevant. However, these error symbols
- do have @code{error-message} properties, and if no data is provided,
- the @code{error-message} property @emph{is} used. @xref{Files}.
- @c jka-compr.el
- @item compression-error
- This is a subcategory of @code{file-error}, which results from
- problems handling a compressed file. @xref{How Programs Do Loading}.
- @c userlock.el
- @item file-locked
- This is a subcategory of @code{file-error}. @xref{File Locks}.
- @c userlock.el
- @item file-supersession
- This is a subcategory of @code{file-error}. @xref{Modification Time}.
- @c filenotify.el
- @item file-notify-error
- This is a subcategory of @code{file-error}. It happens, when a file
- could not be watched for changes. @xref{File Notifications}.
- @c net/ange-ftp.el
- @item ftp-error
- This is a subcategory of @code{file-error}, which results from
- problems in accessing a remote file using ftp. @xref{Remote Files,,,
- emacs, The GNU Emacs Manual}.
- @item invalid-function
- The message is @samp{Invalid function}. @xref{Function Indirection}.
- @item invalid-read-syntax
- The message is @samp{Invalid read syntax}. @xref{Printed
- Representation}.
- @item invalid-regexp
- The message is @samp{Invalid regexp}. @xref{Regular Expressions}.
- @c simple.el
- @item mark-inactive
- The message is @samp{The mark is not active now}. @xref{The Mark}.
- @item no-catch
- The message is @samp{No catch for tag}. @xref{Catch and Throw}.
- @ignore
- @c Not actually used for anything? Probably definition should be removed.
- @item protected-field
- The message is @samp{Attempt to modify a protected file}.
- @end ignore
- @item scan-error
- The message is @samp{Scan error}. This happens when certain
- syntax-parsing functions find invalid syntax or mismatched
- parentheses. Conventionally raised with three argument: a
- human-readable error message, the start of the obstacle that cannot be
- moved over, and the end of the obstacle. @xref{List Motion}, and
- @xref{Parsing Expressions}.
- @item search-failed
- The message is @samp{Search failed}. @xref{Searching and Matching}.
- @item setting-constant
- The message is @samp{Attempt to set a constant symbol}. This happens
- when attempting to assign values to @code{nil}, @code{t}, and keyword
- symbols. @xref{Constant Variables}.
- @c simple.el
- @item text-read-only
- The message is @samp{Text is read-only}. This is a subcategory of
- @code{buffer-read-only}. @xref{Special Properties}.
- @item undefined-color
- The message is @samp{Undefined color}. @xref{Color Names}.
- @item user-error
- The message is the empty string. @xref{Signaling Errors}.
- @item void-function
- The message is @samp{Symbol's function definition is void}.
- @xref{Function Cells}.
- @item void-variable
- The message is @samp{Symbol's value as variable is void}.
- @xref{Accessing Variables}.
- @item wrong-number-of-arguments
- The message is @samp{Wrong number of arguments}. @xref{Classifying
- Lists}.
- @item wrong-type-argument
- The message is @samp{Wrong type argument}. @xref{Type Predicates}.
- @end table
- @ignore The following seem to be unused now.
- The following kinds of error, which are classified as special cases of
- @code{arith-error}, can occur on certain systems for invalid use of
- mathematical functions. @xref{Math Functions}.
- @table @code
- @item domain-error
- The message is @samp{Arithmetic domain error}.
- @item overflow-error
- The message is @samp{Arithmetic overflow error}. This is a subcategory
- of @code{domain-error}.
- @item range-error
- The message is @code{Arithmetic range error}.
- @item singularity-error
- The message is @samp{Arithmetic singularity error}. This is a
- subcategory of @code{domain-error}.
- @item underflow-error
- The message is @samp{Arithmetic underflow error}. This is a
- subcategory of @code{domain-error}.
- @end table
- @end ignore
|