GNU bug report logs - #74378
[PATCH] Allow lambdas for 'flymake-cc-command'

Previous Next

Package: emacs;

Reported by: Pengji Zhang <me <at> pengjiz.com>

Date: Sat, 16 Nov 2024 03:55:01 UTC

Severity: normal

Tags: patch

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 74378 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: sbaugh <at> janestreet.com
Cc: 74378 <at> debbugs.gnu.org, me <at> pengjiz.com
Subject: Re: bug#74378: [PATCH] Allow lambdas for 'flymake-cc-command'
Date: Sat, 30 Nov 2024 11:55:26 +0200
Ping!  Spencer, please respond.

> Cc: 74378 <at> debbugs.gnu.org
> Date: Sat, 16 Nov 2024 16:30:19 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> 
> > From: Pengji Zhang <me <at> pengjiz.com>
> > Date: Sat, 16 Nov 2024 11:54:19 +0800
> > 
> > Currently the option 'flymake-cc-command' only takes a symbol that names
> > a function, instead of all callable objects. I am not sure if that is an
> > intentional design, but I think the alternative is more common and
> > semantic. So I am proposing this patch to allow setting
> > 'flymake-cc-command' to an unnamed lambda (and other callable objects).
> > 
> > Thank you!
> 
> Spencer, any comments?
> 
> > >From 53cc56749e8b396fefb7f430a1eb9e13aa4a25ee Mon Sep 17 00:00:00 2001
> > From: Pengji Zhang <me <at> pengjiz.com>
> > Date: Sat, 16 Nov 2024 11:26:41 +0800
> > Subject: [PATCH] Allow lambdas for 'flymake-cc-command'
> > 
> > * lisp/progmodes/flymake-cc.el (flymake-cc-command): Use
> > customization type 'function' instead of 'symbol' to allow other
> > callable objects in addition to named functions, and update the
> > doc string accordingly.
> > (flymake-cc): Use 'functionp' to check if 'flymake-cc-command'
> > is callable.
> > ---
> >  lisp/progmodes/flymake-cc.el | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
> > 
> > diff --git a/lisp/progmodes/flymake-cc.el b/lisp/progmodes/flymake-cc.el
> > index 60e7da5d617..79557c9fbe4 100644
> > --- a/lisp/progmodes/flymake-cc.el
> > +++ b/lisp/progmodes/flymake-cc.el
> > @@ -28,17 +28,17 @@
> >  
> >  (require 'cl-lib)
> >  
> > -(defcustom flymake-cc-command 'flymake-cc-use-special-make-target
> > +(defcustom flymake-cc-command #'flymake-cc-use-special-make-target
> >    "Command used by the `flymake-cc' backend.
> > -A list of strings, or a symbol naming a function that produces one
> > -such list when called with no arguments in the buffer where the
> > -variable `flymake-mode' is active.
> > +A list of strings, or a function that produces one such list when called
> > +with no arguments in the buffer where the variable `flymake-mode' is
> > +active.
> >  
> >  The command should invoke a GNU-style compiler that checks the
> >  syntax of a (Obj)C(++) program passed to it via its standard
> >  input and prints the result on its standard output."
> >    :type '(choice
> > -          (symbol :tag "Function")
> > +          (function :tag "Function")
> >            (repeat :tag "Command(s)" string))
> >    :version "27.1"
> >    :group 'flymake-cc)
> > @@ -128,7 +128,7 @@ flymake-cc
> >         (make-process
> >          :name "gcc-flymake"
> >          :buffer (generate-new-buffer "*gcc-flymake*")
> > -        :command (if (symbolp flymake-cc-command)
> > +        :command (if (functionp flymake-cc-command)
> >                       (funcall flymake-cc-command)
> >                     flymake-cc-command)
> >          :noquery t :connection-type 'pipe
> > -- 
> > 2.47.0
> > 
> 
> 
> 
> 




This bug report was last modified 165 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.