Menu

#14 defvar bug?

minor
closed-accepted
5
2002-09-11
2002-09-04
Tim Hermans
No

For some reason a variable declaration does not work
when you use the tiny-tools.

I'm using a clean install of Emacro 2.3.2beta. Never
used before.
Then I install the latest tiny-tools (version 2002.0805) into
"~/emacs/packages". Make sure the cache is refreshed.

When I start emacs I get:

---Backtrace ------------------------------
Debugger entered--Lisp error: (void-variable tinyload-:load-
list)
(append tinyload-:load-list (list arg))
(setq tinyload-:load-list (append tinyload-:load-list (list
arg)))
(if cache-tinyload (setq tinyload-:load-list (append
tinyload-:load-list ...)$
emacro-require(e-keys)
eval-buffer(#<buffer *load*<3>> nil "e-config" nil t)
load-with-code-conversion
("/home/username/emacs/emacro/e-config.el" "e-config$
require(e-config)
eval-buffer(#<buffer *load*<2>> nil "e-macro" nil t)
load-with-code-conversion
("/home/username/emacs/emacro/e-macro.el" "e-
macro" $
require(e-macro)
eval-buffer(#<buffer *load*> nil "~/.emacs" nil t)
load-with-code-conversion
("/home/username/.emacs" "~/.emacs" t t)
load("~/.emacs" t t)
#[nil "^H\205\227^@
\306=\203^Q^@\307^H\310Q\2025^@ \311=\203'^@\312
\307\31$
command-line()
normal-top-level()
eval((normal-top-level))
---------------------------------------------

In "~/emacs/emacro/e-config.el" I see the lines:

(cache-locate-library
use-cache 'cache-tinyload "tinyload" "To
start EMacro faster, get tiny tools from
<url: ...>")
(defvar tinyload-:load-list) ;shut up compiler

But if I try to eval that defvar, I get nothing. However if I
add a
comment to it tinyload loads correctly. As in:

(defvar tinyload-:load-list "")

Hmm. I wonder if this is a bug with Emacs or what?

thermans

Discussion

  • Tim Hermans

    Tim Hermans - 2002-09-04

    Logged In: YES
    user_id=189901

    By the way, the same is true for the line:

    (defvar cache-tiny-path)

    in "~/emacs/emacro/e-macro.el"

    You have to add a string at the end.

     
  • Tim Hermans

    Tim Hermans - 2002-09-04

    Logged In: YES
    user_id=189901

    From the function definition of "defvar":

    defvar is a special form.
    (defvar SYMBOL [INITVALUE DOCSTRING])

    Define SYMBOL as a variable.
    ...stuff removed ...
    INITVALUE and DOCSTRING are optional.
    ...stuff removed...
    If INITVALUE is missing, SYMBOL's value is not set.

     
  • Bruce Ingalls

    Bruce Ingalls - 2002-09-11

    Logged In: YES
    user_id=58006

    Rather than dig up Emacs theory of operation, I am applying
    the fix you already posted for this.
    My guess is that defvar is a little more picky, as
    tinyload-:load-list is a list, and not a simple atom.
    EMacro v2.3.3beta should work; it is due this week.

     
  • Bruce Ingalls

    Bruce Ingalls - 2002-09-11
    • labels: 103378 --> configuration
    • assigned_to: nobody --> bingalls
    • status: open --> closed-accepted
     

Log in to post a comment.