diff options
author | Andy Wingo <wingo@pobox.com> | 2009-11-26 22:11:40 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2009-12-01 21:00:26 +0100 |
commit | 8397a3a69555c73d4e1df89ae96c561d2ea43188 (patch) | |
tree | 324e58b81be20cc8c153e951f63bb28fe692a022 /module/oop | |
parent | ecdfc95d1c4cca8cb87412cd30a8fbb39afadd21 (diff) | |
download | guile-8397a3a69555c73d4e1df89ae96c561d2ea43188.tar.gz |
local-eval will go away
* module/ice-9/debugger/commands.scm:
* module/ice-9/debugging/traps.scm:
* module/ice-9/emacs.scm:
* module/ice-9/gds-client.scm: Add some FIXMEs due to impending
local-eval removal.
* module/oop/goops.scm (make-generic-bound-check-getter): Just the
compiled closure case here.
Diffstat (limited to 'module/oop')
-rw-r--r-- | module/oop/goops.scm | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/module/oop/goops.scm b/module/oop/goops.scm index 87afae994..2e96e0b03 100644 --- a/module/oop/goops.scm +++ b/module/oop/goops.scm @@ -1114,14 +1114,7 @@ #:slot-definition slotdef))) (define (make-generic-bound-check-getter proc) - (let ((source (and (closure? proc) (procedure-source proc)))) - (if (and source (null? (cdddr source))) - (let ((obj (caadr source))) - ;; smart closure compilation - (local-eval - `(lambda (,obj) (,assert-bound ,(caddr source) ,obj)) - (procedure-environment proc))) - (lambda (o) (assert-bound (proc o) o))))) + (lambda (o) (assert-bound (proc o) o))) ;; the idea is to compile the index into the procedure, for fastest ;; lookup. Also, @slot-ref and @slot-set! have their own bytecodes. |