Diff for /gforth/prims2x.fs between versions 1.74 and 1.75

version 1.74, 2001/01/24 10:32:01 version 1.75, 2001/01/24 13:53:32
Line 188  struct% Line 188  struct%
     cell% 2* field prim-c-code      cell% 2* field prim-c-code
     cell% 2* field prim-forth-code      cell% 2* field prim-forth-code
     cell% 2* field prim-stack-string      cell% 2* field prim-stack-string
       cell%    field prim-items-wordlist \ unique items
     item% max-effect * field prim-effect-in      item% max-effect * field prim-effect-in
     item% max-effect * field prim-effect-out      item% max-effect * field prim-effect-out
     cell%    field prim-effect-in-end      cell%    field prim-effect-in-end
Line 227  variable name-line Line 228  variable name-line
 2variable last-name-filename  2variable last-name-filename
 Variable function-number 0 function-number !  Variable function-number 0 function-number !
   
 \ for several reasons stack items of a word are stored in a wordlist  
 \ since neither forget nor marker are implemented yet, we make a new  
 \ wordlist for every word and store it in the variable items  
 variable itemsqq  
   
 \ a few more set ops  \ a few more set ops
   
 : bit-equivalent ( w1 w2 -- w3 )  : bit-equivalent ( w1 w2 -- w3 )
Line 283  variable itemsqq Line 279  variable itemsqq
  r@ item-first @ if   r@ item-first @ if
      rdrop false exit       rdrop false exit
  endif   endif
  r@ item-name 2@ itemsqq @ search-wordlist 0= abort" bug"   r@ item-name 2@ prim prim-items-wordlist @ search-wordlist 0= abort" bug"
  execute @   execute @
  dup r@ =   dup r@ =
  if \ item first appeared in output   if \ item first appeared in output
Line 370  does> ( item -- ) Line 366  does> ( item -- )
     { item typ }      { item typ }
     typ item item-type !      typ item item-type !
     typ type-stack @ item item-stack !default      typ type-stack @ item item-stack !default
     item item-name 2@ itemsqq @ search-wordlist 0= if \ new name      item item-name 2@ prim prim-items-wordlist @ search-wordlist 0= if
         item item-name 2@ nextname item declare          item item-name 2@ nextname item declare
         item item-first on          item item-first on
         \ typ type-c-name 2@ type space type  ." ;" cr          \ typ type-c-name 2@ type space type  ." ;" cr
Line 399  does> ( item -- ) Line 395  does> ( item -- )
     ['] declaration map-items ;      ['] declaration map-items ;
   
 : declarations ( -- )  : declarations ( -- )
  wordlist dup itemsqq ! set-current   wordlist dup prim prim-items-wordlist ! set-current
  prim prim-effect-in prim prim-effect-in-end @ declaration-list   prim prim-effect-in prim prim-effect-in-end @ declaration-list
  prim prim-effect-out prim prim-effect-out-end @ declaration-list ;   prim prim-effect-out prim prim-effect-out-end @ declaration-list ;
   

Removed from v.1.74  
changed lines
  Added in v.1.75


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>