GNU bug report logs - #14529
gv--defsetter, advice--set-buffer-local compilation warnings

Previous Next

Package: emacs;

Reported by: Glenn Morris <rgm <at> gnu.org>

Date: Sat, 1 Jun 2013 22:42:03 UTC

Severity: minor

Found in version 24.3.50

Fixed in version 27.1

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 14529 in the body.
You can then email your comments to 14529 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Sat, 01 Jun 2013 22:42:06 GMT) Full text and rfc822 format available.

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

From: Glenn Morris <rgm <at> gnu.org>
To: submit <at> debbugs.gnu.org
Subject: gv--defsetter, advice--set-buffer-local compilation warnings
Date: Sat, 01 Jun 2013 18:39:46 -0400
Package: emacs
Severity: minor
Version: 24.3.50

There are these (spurious?) warnings while bootstrapping:

  the function `gv--defsetter' might not be defined at runtime.
  (image-mode, winner, avl-tree, eieio)

  the function `advice--set-buffer-local' might not be defined at runtime.
  (mailabbrev)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Sun, 02 Jun 2013 02:44:02 GMT) Full text and rfc822 format available.

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

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 14529 <at> debbugs.gnu.org
Subject: Re: bug#14529: gv--defsetter,
	advice--set-buffer-local compilation warnings
Date: Sat, 01 Jun 2013 22:42:03 -0400
>   the function `gv--defsetter' might not be defined at runtime.
>   (image-mode, winner, avl-tree, eieio)

gv--setter is used inside a function placed on the `gv-expander'
property of some symbols, which should never be used except by gv.el
code (at which point gv--defsetter will be defined).

>   the function `advice--set-buffer-local' might not be defined at runtime.
>   (mailabbrev)

Hmmm... not sure what that is.


        Stefan




Reply sent to Alan Mackenzie <acm <at> muc.de>:
You have taken responsibility. (Wed, 25 Nov 2015 11:11:02 GMT) Full text and rfc822 format available.

Notification sent to Glenn Morris <rgm <at> gnu.org>:
bug acknowledged by developer. (Wed, 25 Nov 2015 11:11:02 GMT) Full text and rfc822 format available.

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

From: Alan Mackenzie <acm <at> muc.de>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 14529-done <at> debbugs.gnu.org
Subject: Re: gv--defsetter, advice--set-buffer-local compilation warnings
Date: Wed, 25 Nov 2015 11:12:40 +0000
This bug has gone away.  Closing.

On Sat, Jun 01, 2013 at 06:39:46PM -0400, Glenn Morris wrote:
> Package: emacs
> Severity: minor
> Version: 24.3.50

> There are these (spurious?) warnings while bootstrapping:

>   the function `gv--defsetter' might not be defined at runtime.
>   (image-mode, winner, avl-tree, eieio)

>   the function `advice--set-buffer-local' might not be defined at runtime.
>   (mailabbrev)

-- 
Alan Mackenzie (Nuremberg, Germany).




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 23 Dec 2015 12:24:04 GMT) Full text and rfc822 format available.

Did not alter fixed versions and reopened. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 23 Mar 2018 21:13:01 GMT) Full text and rfc822 format available.

bug unarchived. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 23 Mar 2018 21:14:02 GMT) Full text and rfc822 format available.

Did not alter fixed versions and reopened. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 23 Mar 2018 21:14:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Fri, 23 Mar 2018 21:17:01 GMT) Full text and rfc822 format available.

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

From: Glenn Morris <rgm <at> gnu.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 14529 <at> debbugs.gnu.org
Subject: Re: bug#14529: gv--defsetter,
 advice--set-buffer-local compilation warnings
Date: Fri, 23 Mar 2018 17:16:40 -0400
Stefan Monnier wrote:

>>   the function `gv--defsetter' might not be defined at runtime.
>>   (image-mode, winner, avl-tree []
>
> gv--setter is used inside a function placed on the `gv-expander'
> property of some symbols, which should never be used except by gv.el
> code (at which point gv--defsetter will be defined).

These warnings have come back following 97b7e58.
Obviously they can be declare-functioned away, but it would be nicer if
there was a general solution that did not require modifying each file
that declares a gv-setter.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Fri, 23 Mar 2018 23:26:01 GMT) Full text and rfc822 format available.

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

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 14529 <at> debbugs.gnu.org
Subject: Re: bug#14529: gv--defsetter,
 advice--set-buffer-local compilation warnings
Date: Fri, 23 Mar 2018 19:25:01 -0400
Glenn Morris <rgm <at> gnu.org> writes:

> Stefan Monnier wrote:
>
>>>   the function `gv--defsetter' might not be defined at runtime.
>>>   (image-mode, winner, avl-tree []
>>
>> gv--setter is used inside a function placed on the `gv-expander'
>> property of some symbols, which should never be used except by gv.el
>> code (at which point gv--defsetter will be defined).
>
> These warnings have come back following 97b7e58.
> Obviously they can be declare-functioned away, but it would be nicer if
> there was a general solution that did not require modifying each file
> that declares a gv-setter.

I'd love to have a general way to say things like "code on symbol
property `gv-expand' can use any function provided by gv.el", but in the
mean time would the patch below work?


        Stefan


diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el
index 1e5347d206..230d59f189 100644
--- a/lisp/emacs-lisp/gv.el
+++ b/lisp/emacs-lisp/gv.el
@@ -216,6 +216,8 @@ gv-define-setter
   (declare (indent 2) (debug (&define name sexp body)))
   `(gv-define-expander ,name
      (lambda (do &rest args)
+       (declare-function
+        gv--defsetter "gv" (name setter do args &optional vars))
        (gv--defsetter ',name (lambda ,arglist ,@body) do args))))
 
 ;;;###autoload




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Tue, 17 Apr 2018 18:29:02 GMT) Full text and rfc822 format available.

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

From: Glenn Morris <rgm <at> gnu.org>
To: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Cc: 14529 <at> debbugs.gnu.org
Subject: Re: bug#14529: gv--defsetter,
 advice--set-buffer-local compilation warnings
Date: Tue, 17 Apr 2018 14:28:43 -0400
Stefan Monnier wrote:

> --- a/lisp/emacs-lisp/gv.el
> +++ b/lisp/emacs-lisp/gv.el
> @@ -216,6 +216,8 @@ gv-define-setter
>    (declare (indent 2) (debug (&define name sexp body)))
>    `(gv-define-expander ,name
>       (lambda (do &rest args)
> +       (declare-function
> +        gv--defsetter "gv" (name setter do args &optional vars))
>         (gv--defsetter ',name (lambda ,arglist ,@body) do args))))
>  
>  ;;;###autoload

Works for me, thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#14529; Package emacs. (Wed, 18 Apr 2018 19:59:01 GMT) Full text and rfc822 format available.

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

From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 14529 <at> debbugs.gnu.org
Subject: Re: bug#14529: gv--defsetter,
 advice--set-buffer-local compilation warnings
Date: Wed, 18 Apr 2018 15:57:59 -0400
> Works for me, thanks.

Pushed to master.  Can we close this bug or is the
advice--set-buffer-local still pending?


        Stefan




bug marked as fixed in version 27.1, send any further explanations to 14529 <at> debbugs.gnu.org and Glenn Morris <rgm <at> gnu.org> Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Wed, 18 Apr 2018 21:13:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 17 May 2018 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 7 years and 36 days ago.

Previous Next


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