sbcl.sbcl/tests/clos-method-combination-caches.pure.lisp
Christophe Rhodes 9e3190e738 Make the method-combination-generic-function cache consistent
The fixup phase of the PCL bootstrap was failing to add the generic
functions to the method combination hashsets.
2024-05-02 14:19:13 +01:00

22 lines
828 B
Common Lisp

;;;; testing the consistency of method combination sets
;;;; This software is part of the SBCL system. See the README file for
;;;; more information.
;;;;
;;;; While most of SBCL is derived from the CMU CL system, the test
;;;; files (like this one) were written from scratch after the fork
;;;; from CMU CL.
;;;;
;;;; This software is in the public domain and is provided with
;;;; absolutely no warranty. See the COPYING and CREDITS files for
;;;; more information.
(let (problems)
(flet ((check (gf)
(let* ((mc (sb-mop:generic-function-method-combination gf))
(gfs (sb-pcl::method-combination-%generic-functions mc)))
(unless (sb-pcl::weak-hashset-memberp gf gfs)
(push gf problems)))))
(sb-pcl::map-all-generic-functions #'check))
(assert (null problems)))