GNU Info

Info Node: (emacs-lisp-intro.info)Void Variable

(emacs-lisp-intro.info)Void Variable


Prev: Void Function Up: Variables
Enter node , (file) or (file)node

Error Message for a Symbol Without a Value
------------------------------------------

   If you attempt to evaluate a symbol that does not have a value bound
to it, you will receive an error message.  You can see this by
experimenting with our 2 plus 2 addition.  In the following expression,
put your cursor right after the `+', before the first number 2, type
`C-x C-e':

     (+ 2 2)

In GNU Emacs 21, you will create a `*Backtrace*' buffer that says:

     ---------- Buffer: *Backtrace* ----------
     Debugger entered--Lisp error: (void-variable +)
       eval(+)
       eval-last-sexp-1(nil)
       eval-last-sexp(nil)
       call-interactively(eval-last-sexp)
     ---------- Buffer: *Backtrace* ----------

(As with the other times we entered the debugger, you can quit by
typing `q' in the `*Backtrace*' buffer.)

   This backtrace is different from the very first error message we saw,
which said, `Debugger entered--Lisp error: (void-function this)'.  In
this case, the function does not have a value as a variable; while in
the other error message, the function (the word `this') did not have a
definition.

   In this experiment with the `+', what we did was cause the Lisp
interpreter to evaluate the `+' and look for the value of the variable
instead of the function definition.  We did this by placing the cursor
right after the symbol rather than after the parenthesis of the
enclosing list as we did before.  As a consequence, the Lisp interpreter
evaluated the preceding s-expression, which in this case was the `+' by
itself.

   Since `+' does not have a value bound to it, just the function
definition, the error message reported that the symbol's value as a
variable was void.

   In GNU Emacs version 20 and before, your error message will say:

     Symbol's value as variable is void: +

The meaning is the same as in GNU Emacs 21.


automatically generated by info2www version 1.2.2.9