[gforth] / gforth / prims2x.fs  

gforth: gforth/prims2x.fs

Diff for /gforth/prims2x.fs between version 1.157 and 1.158

version 1.157, Thu Jul 28 14:12:33 2005 UTC version 1.158, Thu Jul 28 19:15:00 2005 UTC
Line 351 
Line 351 
     \ address of number of stack items in effect out      \ address of number of stack items in effect out
     stack-number @ cells prim prim-stacks-out + ;      stack-number @ cells prim prim-stacks-out + ;
   
   : stack-prim-stacks-sync ( stack -- addr )
       prim prim-stacks-sync swap stack-number @ th ;
   
 \ global vars  \ global vars
 variable c-line  variable c-line
 2variable c-filename  2variable c-filename
Line 506 
Line 509 
 : same-as-in? ( item -- f )  : same-as-in? ( item -- f )
  \ f is true iff the offset and stack of item is the same as on input   \ f is true iff the offset and stack of item is the same as on input
  >r   >r
       r@ item-stack @ stack-prim-stacks-sync @ if
           rdrop false exit
       endif
  r@ item-first @ if   r@ item-first @ if
      rdrop false exit       rdrop false exit
  endif   endif
Line 617 
Line 623 
         endif          endif
         -1 s+loop          -1 s+loop
     \ we did not find a type, abort      \ we did not find a type, abort
           abort
     false s" unknown prefix" ?print-error ;      false s" unknown prefix" ?print-error ;
   
 : declaration ( item -- )  : declaration ( item -- )
Line 650 
Line 657 
     stack item item-stack !      stack item item-stack !
     item declaration ;      item declaration ;
   
 : stack-prim-stacks-sync ( stack -- addr )  
     prim prim-stacks-sync swap stack-number @ th ;  
   
 : set-prim-stacks-sync ( stack -- )  : set-prim-stacks-sync ( stack -- )
     stack-prim-stacks-sync on ;      stack-prim-stacks-sync on ;
   
Line 667 
Line 671 
     item-stack @ dup if      item-stack @ dup if
         set-prim-stacks-sync          set-prim-stacks-sync
     else \ prefixless "..." syncs all stacks      else \ prefixless "..." syncs all stacks
         ['] set-prim-stacks-sync map-stacks1          drop ['] set-prim-stacks-sync map-stacks1
     endif ;      endif ;
 set-current  set-current
   
Line 1800 
Line 1804 
 (( letter (( letter || digit )) **  (( letter (( letter || digit )) **
 )) <- c-ident ( -- )  )) <- c-ident ( -- )
   
 (( ` # ?? (( letter || digit || ` : )) ++ (( ` . ` . ` . )) ??  (( ` . ` . ` .
   )) <- sync-stack ( -- )
   
   (( ` # ?? (( letter || digit || ` : )) ++ sync-stack ??
   || sync-stack
 )) <- stack-ident ( -- )  )) <- stack-ident ( -- )
   
 (( nowhitebq nowhite ** ))  (( nowhitebq nowhite ** ))


Generate output suitable for use with a patch program
Legend:
Removed from v.1.157  
changed lines
  Added in v.1.158

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help