GNU bug report logs -
#71398
30.0.50; Byte-compiling eat 0.9.4 stalls
Previous Next
Reported by: Steven Allen <steven <at> stebalien.com>
Date: Thu, 6 Jun 2024 16:09:01 UTC
Severity: normal
Found in version 30.0.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
(CC Stefan because this appears to be caused by 16fc5b6c0c72464a75d9a84b754375662b3acec6)
Eli Zaretskii <eliz <at> gnu.org> writes:
> Thanks, but why do you think this is a bug in Emacs and not in eat?
> Did you report this to the eat developers? If not, I suggest to do
> that first.
Ah, I should have included that context. This version of EAT used to
compile just fine, I only ran into an issue when I updated to master
yesterday.
On further investigation, this appears to be due to this [1] pcase. It
doesn't actually hang forever, it just gets exponentially slower for
each destructuring pattern with an internal operator like `or` or `and`.
E.g.:
(`((,(or ?B ?e)) nil ((,n)))
(eat--t-cur-down n))
I've tracked it down to 16fc5b6c0c72464a75d9a84b754375662b3acec6.
Reverting this commit makes `eat.el` compile instantly.
[1]: https://codeberg.org/akib/emacs-eat/src/commit/3a6f418f55d183b9d86f99c140caed4ba3d44f93/eat.el#L3534
This bug report was last modified 1 year and 60 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.