bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#27408: 26.0.50; macro setq-local does not have a debug declaration


From: npostavs
Subject: bug#27408: 26.0.50; macro setq-local does not have a debug declaration
Date: Sat, 17 Jun 2017 15:45:46 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux)

severity 27408 minor
tags 27408 + confirmed
quit

"Stefan-W. Hahn" <stefan.hahn@s-hahn.de> writes:

> Also I'm not sure it is worth to have a debug declaration for every
> macro, but I think for setq-local it makes sense, see attached patch.

Probably most macros should have a declaration, assuming someone takes
the time to make one (if nobody makes one, I would take that as a sign
it's not important).  A few, like `declare-function', will probably
never really need one.  I haven't looked through the whole list, but I
guess `woman-pop' and `woman-push' should be replaced with plain `pop'
and `push'.

>  (defmacro setq-local (var val)
>    "Set variable VAR to value VAL in current buffer."
>    ;; Can't use backquote here, it's too early in the bootstrap.
> +  (declare (debug symbolp form))
>    (list 'set (list 'make-local-variable (list 'quote var)) val))

I get a compile failure after applying this:

  ELC      ../../emacs-master/lisp/subr.elc
Reloading stale subr.el
Loading /home/npostavs/src/emacs/emacs-master/lisp/subr.el (source)...
Eager macro-expansion failure: (wrong-number-of-arguments (3 . 3) 4)
Eager macro-expansion failure: (wrong-number-of-arguments (3 . 3) 4)

In toplevel form:
../../emacs-master/lisp/subr.el:121:1:Error: Wrong number of arguments: (3 . 
3), 4






reply via email to

[Prev in Thread] Current Thread [Next in Thread]