Subject: Re: bug#49877: [Emacs 28.0.50 Trunk] *ERROR*: No applicable method: frame-creation-function

From: Lars Ingebrigtsen <[email-masked]>
Date: Fri, 06 Aug 2021 11:45:02 +0200

Jacob Faibussowitsch <[email-masked]> writes:

>  Is this with a fresh
>  checkout (or "make bootstrap")?
>
> I’m not sure I follow, what is the difference?

Sorry, that was unclear.  I meant that as an inclusive or, and as
opposed to doing an incremental build.

> I am able to reproduce/build emacs via:
>
> 1. git checkout master
> 2. make clean
> 3. ./reconfigure.sh (attached)
> 3. make all

I'm still not able to reproduce the problem, but a different user
reported exactly the same problem...  which then went away.  So
something's definitely going on here.

So I've added Stefan to the CCs -- could you take a look at this?  It
looks like a possible problem with the recent eql changes, but is
weirdly difficult to reproduce.  

diff --git a/lisp/frame.el b/lisp/frame.el
index 9b3d120598..8c05ad2fe5 100644
--- a/lisp/frame.el
+++ b/lisp/frame.el
@@ -36,7 +36,11 @@ as its argument.")
(cl-generic-define-context-rewriter window-system (value)
;; If `value' is a `consp', it's probably an old-style specializer,
;; so just use it, and anyway `eql' isn't very useful on cons cells.
- `(window-system ,(if (consp value) value `(eql ,value))))
+ `(window-system ,(if (consp value) value
+ ;; WARNING: unsure whether this eql expression
+ ;; is actually an eql specializer.
+ ;; Bug #47327
+ `(eql ',value))))

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no