Added $set-symbol-proc!
This commit is contained in:
parent
f83af98967
commit
1ca0e11fb3
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -2272,7 +2272,7 @@
|
|||
macro*))))
|
||||
(define (library-expander x)
|
||||
(let-values ([(name imp* inv* vis* invoke-code macro* export-subst export-env)
|
||||
(core-library-expander x)])
|
||||
(core-library-expander x)])
|
||||
(let ([id (gensym)]
|
||||
[name name]
|
||||
[ver '()] ;;; FIXME
|
||||
|
@ -2295,7 +2295,8 @@
|
|||
(define build-export
|
||||
(lambda (x)
|
||||
;;; exports use the same gensym
|
||||
`(#%$set-symbol-value! ',x ,x)))
|
||||
`(begin
|
||||
(#%$set-symbol-value! ',x ,x))))
|
||||
(define (make-export-subst int* ext* rib)
|
||||
(map
|
||||
(lambda (int ext)
|
||||
|
|
|
@ -696,6 +696,7 @@
|
|||
[$symbol-string $symbols]
|
||||
[$symbol-plist $symbols]
|
||||
[$set-symbol-value! $symbols]
|
||||
[$set-symbol-proc! $symbols]
|
||||
[$set-symbol-string! $symbols]
|
||||
[$set-symbol-unique-string! $symbols]
|
||||
[$set-symbol-plist! $symbols]
|
||||
|
|
|
@ -452,10 +452,6 @@
|
|||
(prm 'mset x (K (- disp-symbol-record-value symbol-ptag)) (K unbound))
|
||||
(prm 'mset x (K (- disp-symbol-record-proc symbol-ptag)) (K unbound))
|
||||
(prm 'mset x (K (- disp-symbol-record-plist symbol-ptag)) (K nil))
|
||||
;(prm 'mset x (K (- disp-symbol-system-value symbol-tag)) (K unbound))
|
||||
;(prm 'mset x (K (- disp-symbol-function symbol-ptag)) (K 0))
|
||||
;(prm 'mset x (K (- disp-symbol-error-function symbol-ptag)) (K 0))
|
||||
;(prm 'mset x (K (- disp-symbol-unused symbol-tag)) (K 0))
|
||||
x)]
|
||||
[(P str) (K #t)]
|
||||
[(E str) (nop)])
|
||||
|
@ -491,6 +487,11 @@
|
|||
(prm 'mset x (K (- disp-symbol-record-value symbol-ptag)) (T v))
|
||||
(dirty-vector-set x))])
|
||||
|
||||
(define-primop $set-symbol-proc! unsafe
|
||||
[(E x v)
|
||||
(with-tmp ([x (T x)])
|
||||
(prm 'mset x (K (- disp-symbol-record-proc symbol-ptag)) (T v))
|
||||
(dirty-vector-set x))])
|
||||
|
||||
(define-primop top-level-value safe
|
||||
[(V x)
|
||||
|
|
Loading…
Reference in New Issue