Loading cross.fs +4 −4 Original line number Diff line number Diff line Loading @@ -3039,8 +3039,8 @@ ghost defer-defer@ ghost value-to ghost umethod, 2drop ghost umethod! ghost umethod@ ghost is-umethod ghost umethod-defer@ 2drop ghost u#exec ghost u#+ Loading Loading @@ -3460,8 +3460,8 @@ by UValue over >r no-loop on T : H compile u#exec class-o @ T , H r> tcell / T , (;) swap cell+ swap H [G'] umethod, gset-optimizer [G'] umethod! gset-to [G'] umethod@ gset-defer@ ; [G'] is-umethod gset-to [G'] umethod-defer@ gset-defer@ ; : uvar ( m v size -- m v' ) over >r no-loop on T : H compile u#+ class-o @ T , H Loading glocals.fs +1 −1 Original line number Diff line number Diff line Loading @@ -259,7 +259,7 @@ Defer locals-list! \ !! print assumption and reality then ; (field) locals-name-size+ 10 cells , \ fields + wiggle room, name size must be added (field) locals-name-size+ 8 cells , \ fields + wiggle room, name size must be added : create-local1 ( "name" -- a-addr ) create Loading kernel/vtables.fs +4 −4 Original line number Diff line number Diff line Loading @@ -35,14 +35,14 @@ \ : :loc, >body ['] call-loc peephole-compile, , ; : (uv) ( ip -- xt-addr ) 2@ next-task + @ cell- @ swap cells + ; to: umethod! ( xt xt-method -- ) to: is-umethod ( method-xt -- ) >body cell+ (uv) ! ; to-opt: ( xt-method -- ) to-opt: ( method-xt -- ) >body cell+ lit, postpone (uv) postpone ! ; defer@: umethod@ ( addr -- xt ) defer@: umethod-defer@ ( method-xt -- xt ) >body cell+ (uv) @ ; defer@-opt: ( xt-method -- ) defer@-opt: ( method-xt -- ) >body cell+ lit, postpone (uv) postpone @ ; AVariable vtable-list user-object.fs +4 −2 Original line number Diff line number Diff line Loading @@ -11,7 +11,9 @@ Variable class-o postpone nocov[ over >r : postpone u#exec class-o @ , r> cell/ , postpone ; swap cell+ swap ['] umethod, set-optimizer ['] umethod! set-to ['] umethod@ set-defer@ ['] umethod, set-optimizer ['] is-umethod set-to ['] umethod-defer@ set-defer@ postpone ]nocov ; : uvar ( m v size -- m v' ) Loading @@ -21,4 +23,4 @@ Variable class-o postpone ]nocov ; : uclass ( c "name" -- c m v ) ' execute next-task - class-o ! dup cell- cell- 2@ ; ' >body @ class-o ! dup cell- cell- 2@ ; Loading
cross.fs +4 −4 Original line number Diff line number Diff line Loading @@ -3039,8 +3039,8 @@ ghost defer-defer@ ghost value-to ghost umethod, 2drop ghost umethod! ghost umethod@ ghost is-umethod ghost umethod-defer@ 2drop ghost u#exec ghost u#+ Loading Loading @@ -3460,8 +3460,8 @@ by UValue over >r no-loop on T : H compile u#exec class-o @ T , H r> tcell / T , (;) swap cell+ swap H [G'] umethod, gset-optimizer [G'] umethod! gset-to [G'] umethod@ gset-defer@ ; [G'] is-umethod gset-to [G'] umethod-defer@ gset-defer@ ; : uvar ( m v size -- m v' ) over >r no-loop on T : H compile u#+ class-o @ T , H Loading
glocals.fs +1 −1 Original line number Diff line number Diff line Loading @@ -259,7 +259,7 @@ Defer locals-list! \ !! print assumption and reality then ; (field) locals-name-size+ 10 cells , \ fields + wiggle room, name size must be added (field) locals-name-size+ 8 cells , \ fields + wiggle room, name size must be added : create-local1 ( "name" -- a-addr ) create Loading
kernel/vtables.fs +4 −4 Original line number Diff line number Diff line Loading @@ -35,14 +35,14 @@ \ : :loc, >body ['] call-loc peephole-compile, , ; : (uv) ( ip -- xt-addr ) 2@ next-task + @ cell- @ swap cells + ; to: umethod! ( xt xt-method -- ) to: is-umethod ( method-xt -- ) >body cell+ (uv) ! ; to-opt: ( xt-method -- ) to-opt: ( method-xt -- ) >body cell+ lit, postpone (uv) postpone ! ; defer@: umethod@ ( addr -- xt ) defer@: umethod-defer@ ( method-xt -- xt ) >body cell+ (uv) @ ; defer@-opt: ( xt-method -- ) defer@-opt: ( method-xt -- ) >body cell+ lit, postpone (uv) postpone @ ; AVariable vtable-list
user-object.fs +4 −2 Original line number Diff line number Diff line Loading @@ -11,7 +11,9 @@ Variable class-o postpone nocov[ over >r : postpone u#exec class-o @ , r> cell/ , postpone ; swap cell+ swap ['] umethod, set-optimizer ['] umethod! set-to ['] umethod@ set-defer@ ['] umethod, set-optimizer ['] is-umethod set-to ['] umethod-defer@ set-defer@ postpone ]nocov ; : uvar ( m v size -- m v' ) Loading @@ -21,4 +23,4 @@ Variable class-o postpone ]nocov ; : uclass ( c "name" -- c m v ) ' execute next-task - class-o ! dup cell- cell- 2@ ; ' >body @ class-o ! dup cell- cell- 2@ ;