]> git.eshelyaron.com Git - emacs.git/commitdiff
eieio-core.el: Try and fix bug#69631
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 8 Mar 2024 15:47:01 +0000 (10:47 -0500)
committerEshel Yaron <me@eshelyaron.com>
Mon, 11 Mar 2024 09:21:16 +0000 (10:21 +0100)
* lisp/emacs-lisp/eieio-core.el (eieio--class-precedence-c3)
(eieio--class-precedence-dfs, eieio--class-precedence-bfs): Use
`cl--class-parents` since some of the parents aren't EIEIO classes.

(cherry picked from commit 055e31f1d021ef2c8ac5cca505b5f73118736cff)

lisp/emacs-lisp/eieio-core.el

index 5418f53be35e0825e38826f279231ddaff38cd97..7af6e9ff1bbb6a9d61b05e184afcf617d33b8749 100644 (file)
@@ -960,7 +960,7 @@ need be... May remove that later...)"
 
 (defun eieio--class-precedence-c3 (class)
   "Return all parents of CLASS in c3 order."
-  (let ((parents (eieio--class-parents class)))
+  (let ((parents (cl--class-parents class)))
     (cons class
           (merge-ordered-lists
            (append
@@ -974,7 +974,7 @@ need be... May remove that later...)"
 
 (defun eieio--class-precedence-dfs (class)
   "Return all parents of CLASS in depth-first order."
-  (let* ((parents (eieio--class-parents class))
+  (let* ((parents (cl--class-parents class))
         (classes (copy-sequence
                   (apply #'append
                          (list class)
@@ -995,12 +995,12 @@ need be... May remove that later...)"
 (defun eieio--class-precedence-bfs (class)
   "Return all parents of CLASS in breadth-first order."
   (let* ((result)
-         (queue (eieio--class-parents class)))
+         (queue (cl--class-parents class)))
     (while queue
       (let ((head (pop queue)))
        (unless (member head result)
          (push head result)
-         (setq queue (append queue (eieio--class-parents head))))))
+         (setq queue (append queue (cl--class-parents head))))))
     (cons class (nreverse result)))
   )