all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Michael Heerdegen <michael_heerdegen@web.de>
To: Akira Komamura <akira.komamura@gmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>, 59900@debbugs.gnu.org
Subject: bug#59900: 30.0.50; map pattern in pcase causes a byte-compile error
Date: Fri, 09 Dec 2022 03:11:14 +0100	[thread overview]
Message-ID: <87k031nx6l.fsf@web.de> (raw)
In-Reply-To: <CAFYM7h4EAyzcr2yBMz=f6JTd0agUW8nwpO8Tw8JNTCmNDT3+fQ@mail.gmail.com> (Akira Komamura's message of "Thu, 8 Dec 2022 22:11:39 +0900")

Akira Komamura <akira.komamura@gmail.com> writes:

> I encountered similar errors in other libraries that contain a `map' pattern
> inside a `pcase' form. It didn't happen until recently, when I updated Emacs
> and
> began to get those errors.
>
>  So I wonder where's the place in the core Emacs sources
>  which causes the problem, and I couldn't find it.  I'm probably
>  missing something.

Maybe it started with

| 85555ad3b79 ; Require map only during compilation
| Philip Kaludercic <philipk@posteo.net> 2022-10-23

Anyway, AFAIU currently compiling pcase forms with `map' patterns
requires map.el to be currently loaded, and since you can't (and could
not) rely on that, it's better to add
(eval-when-compile (require 'map)).

> There are some other additional patterns for `pcase'. One of them is `rx'
> pattern. There is an autoload cookie right above the definition of
> `(pcase-defmacro rx ...' in `rx.el'. On the other hand, there is no autoload
> above `(pcase-defmacro map ...' in `map.el'. I think this might be the cause.
> Is there any reason for not autoloading the `pcase-defmacro` form?

I see no reason, it should be doable.

Michael.





  reply	other threads:[~2022-12-09  2:11 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-08  7:50 bug#59900: 30.0.50; map pattern in pcase causes a byte-compile error Akira Komamura
2022-12-08 11:06 ` Eli Zaretskii
2022-12-08 13:03   ` Visuwesh
2022-12-08 14:20     ` Eli Zaretskii
2022-12-08 14:49       ` Visuwesh
2022-12-08 13:11   ` Akira Komamura
2022-12-09  2:11     ` Michael Heerdegen [this message]
2022-12-09  7:12       ` Eli Zaretskii
2022-12-09  7:58         ` Akira Komamura
2022-12-09 18:02         ` Michael Heerdegen
2022-12-09 19:06           ` Eli Zaretskii
2022-12-09 21:02             ` Michael Heerdegen
2022-12-10  1:01               ` Michael Heerdegen
2022-12-10  7:53                 ` Eli Zaretskii

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=87k031nx6l.fsf@web.de \
    --to=michael_heerdegen@web.de \
    --cc=59900@debbugs.gnu.org \
    --cc=akira.komamura@gmail.com \
    --cc=eliz@gnu.org \
    /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.