[gforth] / gforth / stuff.fs  

gforth: gforth/stuff.fs

Diff for /gforth/stuff.fs between version 1.16 and 1.17

version 1.16, Sat Sep 23 15:46:59 2000 UTC version 1.17, Mon Nov 13 22:10:30 2000 UTC
Line 18 
Line 18 
 \ along with this program; if not, write to the Free Software  \ along with this program; if not, write to the Free Software
 \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.  \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA.
   
   require glocals.fs
   
 ' require alias needs ( ... "name" -- ... ) \ gforth  ' require alias needs ( ... "name" -- ... ) \ gforth
 \G An alias for @code{require}; exists on other systems (e.g., Win32Forth).  \G An alias for @code{require}; exists on other systems (e.g., Win32Forth).
Line 70 
Line 71 
   
 : in-return-stack? ( addr -- f )  : in-return-stack? ( addr -- f )
     rp0 @ swap - [ forthstart 6 cells + ]L @ u< ;      rp0 @ swap - [ forthstart 6 cells + ]L @ u< ;
   
   \ const-does>
   
   : compile-literals ( w*u u -- ; run-time: -- w*u ) recursive
       ?dup-if
           swap >r 1- compile-literals
           r> POSTPONE literal
       endif ;
   
   : compile-fliterals ( r*u u -- ; run-time: -- w*u ) recursive
       ?dup-if
           { F: r } 1- compile-fliterals
           r POSTPONE fliteral
       endif ;
   
   : (const-does>) ( w*uw r*ur uw ur target "name" -- )
       { uw ur target }
       header docol: cfa, \ start colon def without stack junk
       ur compile-fliterals uw compile-literals
       target compile, POSTPONE exit reveal ;
   
   : const-does> ( run-time: w*uw r*ur uw ur "name" -- )
       here >r 0 POSTPONE literal
       POSTPONE (const-does>)
       POSTPONE ;
       noname : POSTPONE rdrop
       lastxt r> cell+ ! \ patch the literal
   ; immediate


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

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help