From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.bugs Subject: bug#27016: possible bug in `defsetf' Date: Mon, 10 Jul 2017 02:26:14 +0200 Message-ID: <87fue5i1cp.fsf@drachen> References: <87h9075j12.fsf@users.sourceforge.net> <87injak1lj.fsf@users.sourceforge.net> <877ezp4v96.fsf@drachen> <871sppgyhb.fsf@users.sourceforge.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1499646442 10609 195.159.176.226 (10 Jul 2017 00:27:22 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 10 Jul 2017 00:27:22 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) Cc: 27016@debbugs.gnu.org, Stefan Monnier , Rafael D Sorkin To: npostavs@users.sourceforge.net Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jul 10 02:27:15 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dUMXf-0002D8-44 for geb-bug-gnu-emacs@m.gmane.org; Mon, 10 Jul 2017 02:27:11 +0200 Original-Received: from localhost ([::1]:37939 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dUMXk-0007C7-J9 for geb-bug-gnu-emacs@m.gmane.org; Sun, 09 Jul 2017 20:27:16 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58891) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dUMXa-0007A2-UL for bug-gnu-emacs@gnu.org; Sun, 09 Jul 2017 20:27:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dUMXW-0007TF-VF for bug-gnu-emacs@gnu.org; Sun, 09 Jul 2017 20:27:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:56662) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dUMXW-0007T0-R0 for bug-gnu-emacs@gnu.org; Sun, 09 Jul 2017 20:27:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dUMXW-0002hx-Ep for bug-gnu-emacs@gnu.org; Sun, 09 Jul 2017 20:27:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Michael Heerdegen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 10 Jul 2017 00:27:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27016 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 27016-submit@debbugs.gnu.org id=B27016.149964639910382 (code B ref 27016); Mon, 10 Jul 2017 00:27:02 +0000 Original-Received: (at 27016) by debbugs.gnu.org; 10 Jul 2017 00:26:39 +0000 Original-Received: from localhost ([127.0.0.1]:59339 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dUMX9-0002hN-Fc for submit@debbugs.gnu.org; Sun, 09 Jul 2017 20:26:39 -0400 Original-Received: from mout.web.de ([212.227.15.4]:61046) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dUMX7-0002hB-Mp for 27016@debbugs.gnu.org; Sun, 09 Jul 2017 20:26:38 -0400 Original-Received: from drachen.dragon ([88.73.234.235]) by smtp.web.de (mrweb004 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MEqOg-1dRepW39HG-00G4FF; Mon, 10 Jul 2017 02:26:16 +0200 In-Reply-To: <871sppgyhb.fsf@users.sourceforge.net> (npostavs's message of "Sun, 09 Jul 2017 16:13:36 -0400") X-Provags-ID: V03:K0:NqzF/gF16HLUDCzqGpz7cBoSC3JeHT9RgA2rHSyhjIdaPpdEWB1 lliR7n6tGIxevB2e/8rfkB5G7IIkVLLdaJJDUBz6IIGXt2IR1vo86KTpUaeX3kvIn4+cdBS CjdnHkeyZJUGqgUVRhC3yIDVbYKiZdxz/OM70scGyviNdX9rjmVN9+dI/+Xl7gvsU5FHgYD EoLLwPyoWw+NmaQGV60ow== X-UI-Out-Filterresults: notjunk:1;V01:K0:bpOGCHPqTnA=:1L87dg4SuWKQX5LwiPVX0S cJjfbAV8E/L0g236oQRs9FVdn7eQeh0PKTCFhlnErmpDd8NxNTy/EIRJ907wLV9wW3etQ37o8 yt+vUnOj8p+5gjJpRYeD5KwLnu4a7EWEzFzyiA71ITxrt5pQaRLgCRMlL6Jmbbr3qxDPD1bbj sG8y8ZpGFArvXXwUPAG0/4zYXEv5ZjoCsZMTSfL0tiGlLkJN0eSkK5bVcz+q7tbkoBucLMB8L h/vwVKBQqS2KAREeamATh0LNdOMF4VXAVUPju7+inagC+ueUZ9NTSsrRrT2mICH0BWaNNlFOy EF1qtKK0y9+SdZ84WaafzYZ6qsvE7PHvTKM5Oyjdo2LuB8OpA/IVboeeWXnD98WWdgIaT/vvA VJnrJ2DAsGYBDIN4YLkCamZR/jbdrhA+Wl38v0FLcbhKa4P57nnvuhPx94qNMFGRXb53+Olsi rXpaXFkB20kDoefjkmuq+EFxXGHFoXmgEf/qv7NRAmihMs/zo3acaXnnT5eC2cOtWCf/qsU0T G/5L3RYdxGCZqhVj46kSvdP8KAzofUFQJ5T/eo4tuBLTWgnhGYBSvYl1g7fCCP/4FBbFjhlkM nn9p8exlN3p79QJM83WQZ6DbZwng+yflGZiBhxoha0Bf+J7vlEYTuXH650B8PQYXPWE1D2Gc5 GFfDYwlV7BG+EpeP/4LwriYrRYiLFKi80kArHwMyYQNzOlPkYB4P9WKOJ4HfnPD/rj9sbeSGV 5SQxqHelRFPr/syKzoqfeh4z1wjLvy+eYIRfCeYRxn76F2EWzGobvHRGCOjReno+mKlTBXAH X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:134383 Archived-At: npostavs@users.sourceforge.net writes: > Here's a patch for it: [...] Thanks for working on this. AFAIU I think it should work. > @@ -146,12 +149,15 @@ (defmacro gv-define-expander (name handler) > HANDLER is a function which takes an argument DO followed by the same > arguments as NAME. DO is a function as defined in `gv-get'." > (declare (indent 1) (debug (sexp form))) > - ;; Use eval-and-compile so the method can be used in the same file as it > - ;; is defined. > - ;; FIXME: Just like byte-compile-macro-environment, we should have something > - ;; like byte-compile-symbolprop-environment so as to handle these things > - ;; cleanly without affecting the running Emacs. > - `(eval-and-compile (put ',name 'gv-expander ,handler))) > + ;; Push onto `byte-compile-macro-environment' so the method can be > + ;; used in the same file as it is defined. > + (when (boundp 'byte-compile-macro-environment) > + (push (cons :gv-expanders > + (cons (cons name handler) > + (cdr (assq :gv-expanders > + byte-compile-macro-environment)))) > + byte-compile-macro-environment)) > + `(put ',name 'gv-expander ,handler)) Is it intended to add an :gv-expanders entry to byte-compile-macro-environment more than once? Michael.