Subject: 23.1; Warnings from repeat.el

From: "Drew Adams" <[email-masked]>
Date: Sun, 4 Oct 2009 07:52:15 -0700

emacs -Q
 
I have some code that looks like this:
 
(defun repeat-command (command)
  "Repeat COMMAND."
 (let ((repeat-previous-repeated-command  command)
       (repeat-message-function           'ignore)
       (last-repeatable-command           'repeat))
   (repeat nil)))
 
(defun foo (arg)
  (interactive "P")
  (repeat-command 'bar))
 
When I use `foo', I see these warnings in *Messages* (and briefly in
the echo area):
 
 Warning: defvar ignored because repeat-message-function is let-bound
 Warning: defvar ignored because repeat-previous-repeated-command is let-bound
 
Is this normal? A good idea? Avoidable?

Dunno which defvars are involved; it seems they are defvars in
`repeat.el'.  Why not mention the defvar's variable in the
message, BTW?
 
Note: I found it difficult to try to dig deeper using the
debugger. The debugger seems useless as soon as `repeat' is involved -
it picks up debugger commands to repeat, instead.

In GNU Emacs 23.1.1 (i386-mingw-nt5.1.2600)
 of 2009-07-29 on SOFT-MJASON
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.4)'