summaryrefslogtreecommitdiff
path: root/Lisp/weak-hash-tables.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'Lisp/weak-hash-tables.lisp')
-rw-r--r--Lisp/weak-hash-tables.lisp3
1 files changed, 3 insertions, 0 deletions
diff --git a/Lisp/weak-hash-tables.lisp b/Lisp/weak-hash-tables.lisp
index b016aa5..80b6100 100644
--- a/Lisp/weak-hash-tables.lisp
+++ b/Lisp/weak-hash-tables.lisp
@@ -33,6 +33,8 @@
;; Clean up.
(remhash key hash-table)))))
+ (setf (fdefinition 'weak-remhash) (fdefinition 'remhash))
+
(defun (setf weak-gethash) (value key hash-table)
(setf (gethash key hash-table)
(trivial-garbage:make-weak-pointer value))))
@@ -47,6 +49,7 @@
:test 'eql))
(setf (fdefinition 'weak-gethash) (fdefinition 'gethash))
+ (setf (fdefinition 'weak-remhash) (fdefinition 'remhash))
(defun (setf weak-gethash) (value key hash-table)
(setf (gethash key hash-table) value)))