* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. [not found] ` <20210120191936.DCB55209AB@vcs0.savannah.gnu.org> @ 2021-01-20 21:02 ` Stefan Monnier 2021-01-20 21:36 ` Juri Linkov 2021-01-20 21:03 ` Lars Ingebrigtsen 1 sibling, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-20 21:02 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel > Move the ‘declare’ form before the interactive spec in 10 functions. BTW, I think we should do one of two things: - Make sure all orderings work. - Detect the wrong order and emit a warning when compiling the code. Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:02 ` master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions Stefan Monnier @ 2021-01-20 21:36 ` Juri Linkov 0 siblings, 0 replies; 24+ messages in thread From: Juri Linkov @ 2021-01-20 21:36 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >> Move the ‘declare’ form before the interactive spec in 10 functions. > > BTW, I think we should do one of two things: > - Make sure all orderings work. > - Detect the wrong order and emit a warning when compiling the code. The second option looks safer because false positives would have less drastic effect. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. [not found] ` <20210120191936.DCB55209AB@vcs0.savannah.gnu.org> 2021-01-20 21:02 ` master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions Stefan Monnier @ 2021-01-20 21:03 ` Lars Ingebrigtsen 2021-01-20 21:35 ` Juri Linkov 2021-01-20 21:58 ` Juri Linkov 1 sibling, 2 replies; 24+ messages in thread From: Lars Ingebrigtsen @ 2021-01-20 21:03 UTC (permalink / raw) To: emacs-devel; +Cc: Juri Linkov This leads to: ELC mh-e/mh-speed.elc Warning: Unknown defun property `ignore' in mh-speed-toggle Warning: Unknown defun property `ignore' in mh-speed-view There's apparently (declare (ignore args)) stuff there, which isn't really valid, and is being picked up now that the declare is being parsed. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:03 ` Lars Ingebrigtsen @ 2021-01-20 21:35 ` Juri Linkov 2021-01-20 21:50 ` Juri Linkov 2021-01-20 21:58 ` Juri Linkov 1 sibling, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-20 21:35 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: emacs-devel > This leads to: > > ELC mh-e/mh-speed.elc > Warning: Unknown defun property `ignore' in mh-speed-toggle > Warning: Unknown defun property `ignore' in mh-speed-view > > There's apparently (declare (ignore args)) stuff there, which isn't > really valid, and is being picked up now that the declare is being > parsed. This is very strange - I see no warnings. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:35 ` Juri Linkov @ 2021-01-20 21:50 ` Juri Linkov 2021-01-20 22:00 ` Dmitry Gutov 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-20 21:50 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: emacs-devel >> This leads to: >> >> ELC mh-e/mh-speed.elc >> Warning: Unknown defun property `ignore' in mh-speed-toggle >> Warning: Unknown defun property `ignore' in mh-speed-view >> >> There's apparently (declare (ignore args)) stuff there, which isn't >> really valid, and is being picked up now that the declare is being >> parsed. > > This is very strange - I see no warnings. Sorry, I didn't notice warnings because warnings are highlighted with blue color, not red or orange as one would expect. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:50 ` Juri Linkov @ 2021-01-20 22:00 ` Dmitry Gutov 2021-01-20 22:19 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Dmitry Gutov @ 2021-01-20 22:00 UTC (permalink / raw) To: Juri Linkov, Lars Ingebrigtsen; +Cc: emacs-devel On 20.01.2021 23:50, Juri Linkov wrote: > Sorry, I didn't notice warnings because warnings are highlighted > with blue color, not red or orange as one would expect. Sounds like https://debbugs.gnu.org/29192. Thanks for the change, by the way. I tried to get this right, but apparently looked at the wrong examples. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 22:00 ` Dmitry Gutov @ 2021-01-20 22:19 ` Juri Linkov 2021-01-21 21:52 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-20 22:19 UTC (permalink / raw) To: Dmitry Gutov; +Cc: Lars Ingebrigtsen, emacs-devel >> Sorry, I didn't notice warnings because warnings are highlighted >> with blue color, not red or orange as one would expect. > > Sounds like https://debbugs.gnu.org/29192. It seems the right fix is to change the format of the "Unknown defun property" warning to the same format whose highlighting is already supported, i.e. with filename:line-number:column-number: Warning: Unknown defun property > Thanks for the change, by the way. I tried to get this right, but > apparently looked at the wrong examples. Indeed, there were many misleading examples. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 22:19 ` Juri Linkov @ 2021-01-21 21:52 ` Juri Linkov 2021-01-21 22:01 ` Stefan Monnier 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-21 21:52 UTC (permalink / raw) To: emacs-devel > It seems the right fix is to change the format of the > "Unknown defun property" warning to the same format > whose highlighting is already supported, i.e. with > > filename:line-number:column-number: Warning: Unknown defun property But the problem is that filename is unknown here. Also to support all existing warnings without filename maybe a new rule should be added: diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index a92592bd1e..f342c77a3d 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -404,6 +404,9 @@ compilation-error-regexp-alist-alist (regexp "[0-9][0-9][0-9]"))) 1 (2 . 4) (3 . 5) (6 . 7)) + (gnu-emacs + "^\\(Warning\\):" 1 nil nil 1) + (cucumber ,(rx (| (: bol (| (: "cucumber" (? " -p " (+ (not space)))) ^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-21 21:52 ` Juri Linkov @ 2021-01-21 22:01 ` Stefan Monnier 2021-01-21 22:32 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-21 22:01 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel >> It seems the right fix is to change the format of the >> "Unknown defun property" warning to the same format >> whose highlighting is already supported, i.e. with >> >> filename:line-number:column-number: Warning: Unknown defun property > > But the problem is that filename is unknown here. Traditionally, you can work around this by using "<unknown>" or "<stdin>" or some such pseudo-filename. > + (gnu-emacs > + "^\\(Warning\\):" 1 nil nil 1) I'd much prefer if Emacs followed the GNU Coding Standard format for error messages. Dog food and all that. Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-21 22:01 ` Stefan Monnier @ 2021-01-21 22:32 ` Juri Linkov 2021-01-22 0:22 ` Stefan Monnier 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-21 22:32 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >>> It seems the right fix is to change the format of the >>> "Unknown defun property" warning to the same format >>> whose highlighting is already supported, i.e. with >>> >>> filename:line-number:column-number: Warning: Unknown defun property >> >> But the problem is that filename is unknown here. > > Traditionally, you can work around this by using "<unknown>" or > "<stdin>" or some such pseudo-filename. Then maybe to use a function name as a file name? diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index 0f8dd5a284..619bcf9278 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -301,8 +301,9 @@ defun (cdr body) body))) nil) - (t (message "Warning: Unknown defun property `%S' in %S" - (car x) name))))) + (t (message "%S:%d:Warning: Unknown defun property `%S'" + name (count-lines (point-min) (point)) + (car x)))))) decls)) (def (list 'defalias (list 'quote name) ^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-21 22:32 ` Juri Linkov @ 2021-01-22 0:22 ` Stefan Monnier 2021-01-22 8:50 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-22 0:22 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel > - (t (message "Warning: Unknown defun property `%S' in %S" > - (car x) name))))) > + (t (message "%S:%d:Warning: Unknown defun property `%S'" > + name (count-lines (point-min) (point)) > + (car x)))))) I think `count-lines` is a problem because we don't know in which buffer we are when this is executed. Another approach could be to use something like `macroexp--warn-and-return`. Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-22 0:22 ` Stefan Monnier @ 2021-01-22 8:50 ` Juri Linkov 2021-01-22 14:04 ` Stefan Monnier 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-22 8:50 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >> - (t (message "Warning: Unknown defun property `%S' in %S" >> - (car x) name))))) >> + (t (message "%S:%d:Warning: Unknown defun property `%S'" >> + name (count-lines (point-min) (point)) >> + (car x)))))) > > I think `count-lines` is a problem because we don't know in which buffer > we are when this is executed. The GNU Coding Standard format requires a line number between colons, so maybe count-lines would give some plausible number in most cases. > Another approach could be to use something like > `macroexp--warn-and-return`. `macroexp--warn-and-return` uses `load-file-name` that is nil here. Or do you mean the docstring of `macroexp--funcall-if-compiled`: The purpose is to delay warnings to bytecomp.el, so they can use things like `byte-compile-warn' to get better file-and-line-number data and also to avoid outputting the warning during normal execution. I tried it, but it has no effect. (let ((warnfun (lambda () (message "Warning: Unknown defun property `%S' in %S" (car x) name)))) `(progn (macroexp--funcall-if-compiled ',warnfun))) ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-22 8:50 ` Juri Linkov @ 2021-01-22 14:04 ` Stefan Monnier 2021-01-23 17:33 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-22 14:04 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel >>> - (t (message "Warning: Unknown defun property `%S' in %S" >>> - (car x) name))))) >>> + (t (message "%S:%d:Warning: Unknown defun property `%S'" >>> + name (count-lines (point-min) (point)) >>> + (car x)))))) >> I think `count-lines` is a problem because we don't know in which buffer >> we are when this is executed. > The GNU Coding Standard format requires a line number between colons, > so maybe count-lines would give some plausible number in most cases. But 0 would work as well for that purpose. >> Another approach could be to use something like >> `macroexp--warn-and-return`. > `macroexp--warn-and-return` uses `load-file-name` that is nil here. Not necessarily, no: when compiling, it will let bytecomp.el emit the warning which gives proper file and line numbers. Do we care about the format used when we're not compiling? [ This is not a rethorical question. ] > I tried it, but it has no effect. > > (let ((warnfun (lambda () > (message "Warning: Unknown defun property `%S' in %S" > (car x) name)))) > `(progn > (macroexp--funcall-if-compiled ',warnfun))) How did you try it? Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-22 14:04 ` Stefan Monnier @ 2021-01-23 17:33 ` Juri Linkov 2021-01-23 18:01 ` Stefan Monnier 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-23 17:33 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >> The GNU Coding Standard format requires a line number between colons, >> so maybe count-lines would give some plausible number in most cases. > > But 0 would work as well for that purpose. I don't know if this is the best that could be done: diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index 0f8dd5a284..a2cbb85412 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -301,7 +301,7 @@ defun (cdr body) body))) nil) - (t (message "Warning: Unknown defun property `%S' in %S" + (t (message "unknown:0:Warning: Unknown defun property `%S' in %S" (car x) name))))) decls)) (def (list 'defalias >>> Another approach could be to use something like >>> `macroexp--warn-and-return`. >> `macroexp--warn-and-return` uses `load-file-name` that is nil here. > > Not necessarily, no: when compiling, it will let bytecomp.el emit the > warning which gives proper file and line numbers. > > Do we care about the format used when we're not compiling? > [ This is not a rethorical question. ] Indeed, this format is useful only when compiling. >> I tried it, but it has no effect. >> >> (let ((warnfun (lambda () >> (message "Warning: Unknown defun property `%S' in %S" >> (car x) name)))) >> `(progn >> (macroexp--funcall-if-compiled ',warnfun))) > > How did you try it? Compiled this, then tried to byte-compile a file with wrong `declare`, still same warning without line numbers. ^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 17:33 ` Juri Linkov @ 2021-01-23 18:01 ` Stefan Monnier 2021-01-23 18:56 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-23 18:01 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel >>> (let ((warnfun (lambda () >>> (message "Warning: Unknown defun property `%S' in %S" >>> (car x) name)))) >>> `(progn >>> (macroexp--funcall-if-compiled ',warnfun))) >> >> How did you try it? > > Compiled this, then tried to byte-compile a file with wrong `declare`, > still same warning without line numbers. Ah, well, you used `message` so you got what you deserved ;-) If you look at `macroexp--warn-and-return` it uses `byte-compile-warn`. BTW, did you you use `macroexp--funcall-if-compiled` instead of `macroexp--warn-and-return` because of bootstrapping concerns? Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 18:01 ` Stefan Monnier @ 2021-01-23 18:56 ` Juri Linkov 2021-01-23 19:57 ` Stefan Monnier 0 siblings, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-23 18:56 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >>>> (let ((warnfun (lambda () >>>> (message "Warning: Unknown defun property `%S' in %S" >>>> (car x) name)))) >>>> `(progn >>>> (macroexp--funcall-if-compiled ',warnfun))) >>> >>> How did you try it? >> >> Compiled this, then tried to byte-compile a file with wrong `declare`, >> still same warning without line numbers. > > Ah, well, you used `message` so you got what you deserved ;-) > If you look at `macroexp--warn-and-return` it uses `byte-compile-warn`. > BTW, did you you use `macroexp--funcall-if-compiled` instead of > `macroexp--warn-and-return` because of bootstrapping concerns? Because I don't know what to give to the second arg FORM of 'macroexp--warn-and-return'. I tried to use 'name' for FORM, but then it prints some irrelevant warning: mh-e/mh-speed.el:161:25: Warning: reference to free variable `mh-speed-toggle' But with this patch that uses `byte-compile-warn`: diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index 0f8dd5a284..bf9f3f3fbc 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -301,8 +301,12 @@ defun (cdr body) body))) nil) - (t (message "Warning: Unknown defun property `%S' in %S" - (car x) name))))) + (t (let ((warnfun (lambda () + (byte-compile-warn + "Unknown defun property `%S' in %S" + (car x) name)))) + `(progn + (macroexp--funcall-if-compiled ',warnfun))))))) decls)) (def (list 'defalias (list 'quote name) these warnings finally look right: ELC mh-e/mh-speed.elc In toplevel form: mh-e/mh-speed.el:161:25: Warning: Unknown defun property `ignore' in mh-speed-toggle mh-e/mh-speed.el:179:9: Warning: Unknown defun property `ignore' in mh-speed-view ^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 18:56 ` Juri Linkov @ 2021-01-23 19:57 ` Stefan Monnier 2021-01-23 20:14 ` Juri Linkov 0 siblings, 1 reply; 24+ messages in thread From: Stefan Monnier @ 2021-01-23 19:57 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel > Because I don't know what to give to the second arg FORM of > 'macroexp--warn-and-return'. I think `nil` is the right answer: the (unknown) declaration expands to `nil`. Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 19:57 ` Stefan Monnier @ 2021-01-23 20:14 ` Juri Linkov 2021-01-23 20:49 ` Stefan Monnier 2021-01-23 21:05 ` Stefan Monnier 0 siblings, 2 replies; 24+ messages in thread From: Juri Linkov @ 2021-01-23 20:14 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel >> Because I don't know what to give to the second arg FORM of >> 'macroexp--warn-and-return'. > > I think `nil` is the right answer: the (unknown) declaration expands to `nil`. `nil` doesn't output line numbers: (macroexp--warn-and-return (format-message "Warning: Unknown defun property `%S' in %S" (car x) name) nil) => ELC mh-e/mh-speed.elc Warning: Unknown defun property `ignore' in mh-speed-toggle Warning: Unknown defun property `ignore' in mh-speed-view ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 20:14 ` Juri Linkov @ 2021-01-23 20:49 ` Stefan Monnier 2021-01-23 21:05 ` Stefan Monnier 1 sibling, 0 replies; 24+ messages in thread From: Stefan Monnier @ 2021-01-23 20:49 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel >> I think `nil` is the right answer: the (unknown) declaration expands to `nil`. > > `nil` doesn't output line numbers: > > (macroexp--warn-and-return > (format-message "Warning: Unknown defun property `%S' in %S" > (car x) name) > nil) > > => > > ELC mh-e/mh-speed.elc > Warning: Unknown defun property `ignore' in mh-speed-toggle > Warning: Unknown defun property `ignore' in mh-speed-view Hmm... that suggests the (macroexp--compiling-p) test returns nil for some reason, which points to an error in `macroexp.el`. [ I see an error in the code when form is nil, but that's unrelated to what you're seeing. ] Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-23 20:14 ` Juri Linkov 2021-01-23 20:49 ` Stefan Monnier @ 2021-01-23 21:05 ` Stefan Monnier 1 sibling, 0 replies; 24+ messages in thread From: Stefan Monnier @ 2021-01-23 21:05 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel > ELC mh-e/mh-speed.elc > Warning: Unknown defun property `ignore' in mh-speed-toggle > Warning: Unknown defun property `ignore' in mh-speed-view OK, I found the culprit (`macroexp-macroexpand` had forgotten to bind `macroexpand-all-environment`). I pushed a patch that fixes it (for `defmacro` as well). Stefan ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:03 ` Lars Ingebrigtsen 2021-01-20 21:35 ` Juri Linkov @ 2021-01-20 21:58 ` Juri Linkov 2021-01-20 22:09 ` Lars Ingebrigtsen 1 sibling, 1 reply; 24+ messages in thread From: Juri Linkov @ 2021-01-20 21:58 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: emacs-devel > This leads to: > > ELC mh-e/mh-speed.elc > Warning: Unknown defun property `ignore' in mh-speed-toggle > Warning: Unknown defun property `ignore' in mh-speed-view > > There's apparently (declare (ignore args)) stuff there, which isn't > really valid, and is being picked up now that the declare is being > parsed. I wonder what the intention was to do here, what is the closest valid thing? Maybe (declare (advertised-calling-convention (&rest ignored) "28.1")) ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 21:58 ` Juri Linkov @ 2021-01-20 22:09 ` Lars Ingebrigtsen 2021-01-22 2:13 ` Mike Kupfer 0 siblings, 1 reply; 24+ messages in thread From: Lars Ingebrigtsen @ 2021-01-20 22:09 UTC (permalink / raw) To: Juri Linkov; +Cc: emacs-devel Juri Linkov <juri@linkov.net> writes: > I wonder what the intention was to do here, what is the closest > valid thing? Maybe > > (declare (advertised-calling-convention (&rest ignored) "28.1")) I think just (defun mh-speed-toggle (&rest _ignored) would be fine? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-20 22:09 ` Lars Ingebrigtsen @ 2021-01-22 2:13 ` Mike Kupfer 2021-01-22 18:22 ` Lars Ingebrigtsen 0 siblings, 1 reply; 24+ messages in thread From: Mike Kupfer @ 2021-01-22 2:13 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: emacs-devel, Juri Linkov Lars Ingebrigtsen wrote: > Juri Linkov <juri@linkov.net> writes: > > > I wonder what the intention was to do here I tried to track this down. (declare (ignore VAR)) is a Common Lisp thing, to tell the compiler that VAR is unused in the function (so don't warn about it being unused). My CL reference doesn't mention "args" as a pseudo-variable that could be used with ignore. But it's an ancient reference; I don't know what the current standard allows. Based on iterating with "git blame", it looks like the (declare (ignore...)) stuff was introduced with MH-E 7.0, which I think was the first MH-E release that had speedbar support. I don't know why a CL construct was used here, or why the arguments are ignored. Maybe Bill Wohler remembers. > > , what is the closest > > valid thing? Maybe > > > > (declare (advertised-calling-convention (&rest ignored) "28.1")) > > I think just > > (defun mh-speed-toggle (&rest _ignored) > > would be fine? Seems reasonable to me. cheers, mike ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions. 2021-01-22 2:13 ` Mike Kupfer @ 2021-01-22 18:22 ` Lars Ingebrigtsen 0 siblings, 0 replies; 24+ messages in thread From: Lars Ingebrigtsen @ 2021-01-22 18:22 UTC (permalink / raw) To: Mike Kupfer; +Cc: emacs-devel, Juri Linkov Mike Kupfer <mkupfer@alum.berkeley.edu> writes: >> I think just >> >> (defun mh-speed-toggle (&rest _ignored) >> >> would be fine? > > Seems reasonable to me. OK; done on the trunk now. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2021-01-23 21:05 UTC | newest] Thread overview: 24+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20210120191935.5488.54008@vcs0.savannah.gnu.org> [not found] ` <20210120191936.DCB55209AB@vcs0.savannah.gnu.org> 2021-01-20 21:02 ` master 5065698: Move the ‘declare’ form before the interactive spec in 10 functions Stefan Monnier 2021-01-20 21:36 ` Juri Linkov 2021-01-20 21:03 ` Lars Ingebrigtsen 2021-01-20 21:35 ` Juri Linkov 2021-01-20 21:50 ` Juri Linkov 2021-01-20 22:00 ` Dmitry Gutov 2021-01-20 22:19 ` Juri Linkov 2021-01-21 21:52 ` Juri Linkov 2021-01-21 22:01 ` Stefan Monnier 2021-01-21 22:32 ` Juri Linkov 2021-01-22 0:22 ` Stefan Monnier 2021-01-22 8:50 ` Juri Linkov 2021-01-22 14:04 ` Stefan Monnier 2021-01-23 17:33 ` Juri Linkov 2021-01-23 18:01 ` Stefan Monnier 2021-01-23 18:56 ` Juri Linkov 2021-01-23 19:57 ` Stefan Monnier 2021-01-23 20:14 ` Juri Linkov 2021-01-23 20:49 ` Stefan Monnier 2021-01-23 21:05 ` Stefan Monnier 2021-01-20 21:58 ` Juri Linkov 2021-01-20 22:09 ` Lars Ingebrigtsen 2021-01-22 2:13 ` Mike Kupfer 2021-01-22 18:22 ` Lars Ingebrigtsen
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).