Diff for /gforth/glocals.fs between versions 1.30 and 1.33

version 1.30, 1997/03/04 17:49:51 version 1.33, 1997/05/21 20:39:30
Line 85 Line 85
 \ Currently locals may only be  \ Currently locals may only be
 \ defined at the outer level and TO is not supported.  \ defined at the outer level and TO is not supported.
   
 require search-order.fs  require search.fs
 require float.fs  require float.fs
   
 : compile-@local ( n -- ) \ gforth compile-fetch-local  : compile-@local ( n -- ) \ gforth compile-fetch-local
Line 332  new-locals-map ' new-locals >body cell+ Line 332  new-locals-map ' new-locals >body cell+
 variable old-dpp  variable old-dpp
   
 \ and now, finally, the user interface words  \ and now, finally, the user interface words
 : { ( -- addr wid 0 ) \ gforth open-brace  : { ( -- lastxt wid 0 ) \ gforth open-brace
     dp old-dpp !      dp old-dpp !
     locals-dp dpp !      locals-dp dpp !
       lastxt get-current
     also new-locals      also new-locals
     also get-current locals definitions  locals-types      also locals definitions locals-types
     0 TO locals-wordlist      0 TO locals-wordlist
     0 postpone [ ; immediate      0 postpone [ ; immediate
   
 locals-types definitions  locals-types definitions
   
 : } ( addr wid 0 a-addr1 xt1 ... -- ) \ gforth close-brace  : } ( lastxt wid 0 a-addr1 xt1 ... -- ) \ gforth close-brace
     \ ends locals definitions      \ ends locals definitions
     ] old-dpp @ dpp !      ] old-dpp @ dpp !
     begin      begin
Line 352  locals-types definitions Line 353  locals-types definitions
     repeat      repeat
     drop      drop
     locals-size @ alignlp-f locals-size ! \ the strictest alignment      locals-size @ alignlp-f locals-size ! \ the strictest alignment
     set-current  
     previous previous      previous previous
       set-current lastcfa !
     locals-list TO locals-wordlist ;      locals-list TO locals-wordlist ;
   
 : -- ( addr wid 0 ... -- ) \ gforth dash-dash  : -- ( addr wid 0 ... -- ) \ gforth dash-dash
Line 633  forth definitions Line 634  forth definitions
     then ;      then ;
   
 :noname  :noname
     ' dup >definer [ ' locals-wordlist >definer ] literal =      ' dup >definer [ ' locals-wordlist ] literal >definer =
     if      if
         >body !          >body !
     else      else

Removed from v.1.30  
changed lines
  Added in v.1.33


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