summaryrefslogtreecommitdiff
path: root/Lisp/memory-management.lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2007-08-04 21:06:28 +0200
committerMatthias Benkard <code@mail.matthias.benkard.de>2007-08-04 21:06:28 +0200
commit424402274218149eb9ff7fc560b55534c4b2b70c (patch)
tree924ad45b6026cfbfb820c56fba28a83f7b74c5e5 /Lisp/memory-management.lisp
parent3836edaccf2d9027d01b9d7c7b7a29df512b8d7c (diff)
Allegro CL compatibility.
darcs-hash:04fca2e78b76d10a855512ab7716cb74a3e414c1
Diffstat (limited to 'Lisp/memory-management.lisp')
-rw-r--r--Lisp/memory-management.lisp30
1 files changed, 0 insertions, 30 deletions
diff --git a/Lisp/memory-management.lisp b/Lisp/memory-management.lisp
index 600e079..8331932 100644
--- a/Lisp/memory-management.lisp
+++ b/Lisp/memory-management.lisp
@@ -6,36 +6,6 @@
(defvar *exception-objects* (make-weak-value-hash-table))
-#+cmu
-(progn
- (declaim (inline make-weak-value-hash-table))
-
- (defun make-weak-value-hash-table ()
- (make-hash-table :test 'eql))
-
- (defun weak-gethash (key hash-table &optional (default nil))
- (let ((pointer (gethash key hash-table default)))
- (or (and (trivial-garbage:weak-pointer-p pointer)
- (trivial-garbage:weak-pointer-value pointer))
- (prog1 default
- ;; Clean up.
- (remhash key hash-table)))))
-
- (defun (setf weak-gethash) (value key hash-table)
- (setf (gethash key hash-table)
- (trivial-garbage:make-weak-pointer value))))
-
-#-cmu
-(progn
- (declaim (inline make-weak-value-hash-table))
-
- (defun make-weak-value-hash-table ()
- (trivial-garbage:make-weak-hash-table :weakness :value
- :test 'eql))
-
- (setf (fdefinition 'weak-gethash) (fdefinition 'gethash)
- (fdefinition '(setf weak-gethash)) (fdefinition '(setf gethash))))
-
;; We call the `retain' method on every object that we receive from a
;; method call or otherwise except non-convenience constructor methods
;; (i.e. those whose name starts with `alloc' or `new'). Upon