all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Michael Heerdegen <michael_heerdegen@web.de>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: help-gnu-emacs@gnu.org
Subject: Re: Bookmarks in EWW
Date: Mon, 20 Apr 2020 05:17:27 +0200	[thread overview]
Message-ID: <87blnmlubc.fsf@web.de> (raw)
In-Reply-To: <jwvlfmr62i1.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Sun, 19 Apr 2020 09:18:21 -0400")

[-- Attachment #1: Type: text/plain, Size: 594 bytes --]

Stefan Monnier <monnier@iro.umontreal.ca> writes:

> Oh, right `byte-hunk-handler` is to handle top-level uses only
> (e.g. top-level uses of `require` trigger loading the file at
> compilation time, whereas they don't when not at top-level).

Yeah, I guess such stuff could be mentioned in the file header...

> I think you want to use `(byte-defop-compiler-1 make-local-variable)`
> and then define `byte-compile-make-local-variable`.

Oh, that's what I originally wanted to try first, but
`byte-defop-compiler-1' sounded too creepy.  But that works now (unless
I've missed something else):


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-WIP-My-byte-compile-local-patch.patch --]
[-- Type: text/x-diff, Size: 1228 bytes --]

From a21a6af1dfb60db4ba1c028aff91902649eae920 Mon Sep 17 00:00:00 2001
From: Michael Heerdegen <michael_heerdegen@web.de>
Date: Fri, 10 Apr 2020 01:21:33 +0200
Subject: [PATCH] WIP: My byte compile local patch

---
 lisp/emacs-lisp/bytecomp.el | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 4f01918bdb..4fdb6e65b7 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -4752,6 +4752,14 @@ byte-compile-make-variable-buffer-local
 (defun byte-compile-form-make-variable-buffer-local (form)
   (byte-compile-keep-pending form 'byte-compile-normal-call))

+(byte-defop-compiler-1 make-local-variable
+                       byte-compile-make-local-variable)
+(defun byte-compile-make-local-variable (form)
+  (let ((var-exp (car-safe (cdr-safe form))))
+    (when (eq 'quote (car-safe var-exp))
+      (byte-compile--declare-var (car (cdr var-exp)))))
+  (byte-compile-normal-call form))
+
 (put 'function-put 'byte-hunk-handler 'byte-compile-define-symbol-prop)
 (put 'define-symbol-prop 'byte-hunk-handler 'byte-compile-define-symbol-prop)
 (defun byte-compile-define-symbol-prop (form)
--
2.26.1


[-- Attachment #3: Type: text/plain, Size: 11 bytes --]



Michael.

  reply	other threads:[~2020-04-20  3:17 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-23 11:26 Bookmarks in EWW Marcin Borkowski
2020-03-23 14:56 ` Drew Adams
2020-03-25 11:48   ` Marcin Borkowski
2020-03-23 20:41 ` Michael Heerdegen
2020-03-24 14:46   ` Stefan Monnier
2020-03-25  3:05     ` Michael Heerdegen
2020-03-25  3:45       ` `declare-function' docu (was: Re: Bookmarks in EWW) Emanuel Berg via Users list for the GNU Emacs text editor
2020-03-28 17:59         ` `declare-function' docu Bruno Félix Rezende Ribeiro
2020-03-28 18:38           ` Drew Adams
2020-04-09 12:30             ` Bruno Félix Rezende Ribeiro
2020-04-09 15:47               ` Drew Adams
2020-03-28 21:38           ` Emanuel Berg via Users list for the GNU Emacs text editor
2020-03-25 14:06       ` Bookmarks in EWW Stefan Monnier
2020-03-26  1:09         ` Michael Heerdegen
2020-03-26  4:07           ` Stefan Monnier
2020-03-27  2:07             ` Michael Heerdegen
2020-03-27  3:44               ` Stefan Monnier
2020-03-28  2:31                 ` Michael Heerdegen
2020-03-28  2:55                   ` Stefan Monnier
2020-04-19  3:42                     ` Michael Heerdegen
2020-04-19 13:18                       ` Stefan Monnier
2020-04-20  3:17                         ` Michael Heerdegen [this message]
2020-04-20 13:24                           ` Stefan Monnier
2020-04-21  0:59                             ` Michael Heerdegen
2020-04-29 22:53                             ` Michael Heerdegen
2020-04-30  1:25                               ` Stefan Monnier
2020-04-30  2:08                                 ` Michael Heerdegen
2020-04-30  3:08                                   ` Stefan Monnier
2020-04-30 20:09                                     ` Michael Heerdegen
2020-04-27  2:43                         ` Michael Heerdegen
2020-03-27  4:32         ` buffer-localness (was: Re: Bookmarks in EWW) Emanuel Berg via Users list for the GNU Emacs text editor
2020-03-25 21:48       ` Bookmarks in EWW Drew Adams
2020-03-26  2:29         ` Michael Heerdegen
2020-03-26  3:21           ` Drew Adams
2020-03-26  3:53             ` Michael Heerdegen
2020-03-26 14:02               ` Drew Adams
2020-03-26 22:33                 ` Michael Heerdegen
2020-03-26  8:41           ` Marcin Borkowski
2020-03-25 11:49   ` Marcin Borkowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87blnmlubc.fsf@web.de \
    --to=michael_heerdegen@web.de \
    --cc=help-gnu-emacs@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.