[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#56596: 29.0.50; void-variable cl--nm
From: |
Stefan Kangas |
Subject: |
bug#56596: 29.0.50; void-variable cl--nm |
Date: |
Sat, 16 Jul 2022 15:42:59 -0700 |
"Pierre L. Nageoire" <devel@pollock-nageoire.net> writes:
> Caused by following code
>
> (require 'eieio)
>
> (defclass raw-mother () ())
>
> (cl-defmethod I ((m raw-mother))
> (format "the mother"))
>
> (cl-defmethod hello ((m raw-mother))
> (message "I am %s" (I m)))
>
> (hello (raw-mother))
>
> (defclass raw-daughter (raw-mother) ())
>
> (cl-defmethod I ((d raw-daughter))
> (format "the daughter of %s"
> (cl-call-next-method)))
>
>
> (hello (raw-daughter))
>
>
>
> But only since last update from git repos. With an emacs version updated
> in march approximately no problem.
6f973faa912a5ac1ba643c6f5deb0c02baa0ba6d is the first bad commit
commit 6f973faa912a5ac1ba643c6f5deb0c02baa0ba6d
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Date: Wed Mar 30 13:54:56 2022 -0400
cl-generic: Use OClosures for `cl--generic-isnot-nnm-p`
Rewrite the handling of `cl-no-next-method` to get rid of the hideous
hack used in `cl--generic-isnot-nnm-p` and also to try and move
some of the cost to the construction of the effective method rather
than its invocation. This speeds up method calls measurably when
there's a `cl-call-next-method` in the body.