From 0ffa1258a3f10cf28cbe1751ef92431aa54521c0 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Thu, 12 Dec 2013 14:53:33 +0000 Subject: [PATCH] note a fixme --- specializable.lisp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/specializable.lisp b/specializable.lisp index 6fabb24..29ad926 100644 --- a/specializable.lisp +++ b/specializable.lisp @@ -51,6 +51,12 @@ ;;; gf ;;; args)))) +;;; FIXME: this (and add/remove-direct-method) don't actually work +;;; together, because two distinct calls to make-extended-specializer +;;; return two distinct specializer objects. We need either to make +;;; the extended specializers be interned, or to have them be +;;; arbitrarily ephemeral but adjust specializer-direct-methods (and +;;; implement specializer-direct-generic-functions) accordingly. (defun make-extended-specializer (sname) (destructuring-bind (kind &rest args) sname (apply (or (get kind 'extended-specializer-parser) -- 2.30.2