Diff for /gforth/prims2x.fs between versions 1.35 and 1.39

version 1.35, 1998/12/08 22:02:50 version 1.39, 1999/03/02 15:45:32
Line 42 Line 42
   
 warnings off  warnings off
   
 require search.fs  [IFUNDEF] vocabulary    \ we are executed just with kernel image
 require extend.fs                          \ load the rest that is needed
                           \ (require fails because this file is needed from a
                           \ different directory with the wordlibraries)
   include ./search.fs                     
   include ./extend.fs
   include ./environ.fs
   [THEN]
   
 \ require interpretation.fs  include ./gray.fs
 \ require debugs.fs  
 [IFUNDEF] vocabulary    include search.fs [THEN]  
 [IFUNDEF] environment?  include environ.fs      [THEN]  
 include gray.fs  
   
 100 constant max-effect \ number of things on one side of a stack effect  100 constant max-effect \ number of things on one side of a stack effect
 255 constant maxchar  255 constant maxchar
Line 81  Variable flush-comment flush-comment off Line 83  Variable flush-comment flush-comment off
     f-comment 2@ nip      f-comment 2@ nip
     IF  cr f-comment 2@ 2 /string 1-      IF  cr f-comment 2@ 2 /string 1-
         dup IF          dup IF
             flush-comment @ 1 =              2dup s" -" compare 0=
             IF    ." #ifdef HAS_" bounds ?DO  I c@ toupper emit  LOOP              IF
             ELSE  ." has? " type ."  [IF]"  THEN  cr                  flush-comment @ 1 =
                   IF    ." #else"
                   ELSE  ." [ELSE]"  THEN
               ELSE
                   flush-comment @ 1 =
                   IF    ." #ifdef HAS_" bounds ?DO  I c@ toupper emit  LOOP
                   ELSE  ." has? " type ."  [IF]"  THEN
               THEN  cr
         ELSE    flush-comment @ 1 = IF  ." #endif"  ELSE  ." [THEN]"  THEN          ELSE    flush-comment @ 1 = IF  ." #endif"  ELSE  ." [THEN]"  THEN
             cr  THEN              cr  THEN
         0 0 f-comment 2! THEN ;          0 0 f-comment 2! THEN ;
Line 269  nowhite ++ Line 278  nowhite ++
    (( nl || eof ))     (( nl || eof ))
 )) <- primitive ( -- )  )) <- primitive ( -- )
   
 (( (( primitive {{ printprim }} )) **  eof ))  (( (( primitive {{ printprim }} )) ** eof ))
 parser primitives2something  parser primitives2something
 warnings @ [IF]  warnings @ [IF]
 .( parser generated ok ) cr  .( parser generated ok ) cr
Line 654  set-current Line 663  set-current
   
 : output-label ( -- )  1 flush-comment !  : output-label ( -- )  1 flush-comment !
     ?flush-comment      ?flush-comment
     ." [" -2 primitive-number @ - 0 .r ." ] "  
     ." (Label)&&I_" c-name 2@ type ." ," cr      ." (Label)&&I_" c-name 2@ type ." ," cr
     -1 primitive-number +! ;      -1 primitive-number +! ;
   
 : output-alias ( -- )  flush-comment on  : output-alias ( -- )  flush-comment on
     ?flush-comment      ?flush-comment
     primitive-number @ . ." alias " forth-name 2@ type cr      ( primitive-number @ . ." alias " ) ." Primitive " forth-name 2@ type cr
     -1 primitive-number +! ;      -1 primitive-number +! ;
   
 : output-forth ( -- )  flush-comment on  : output-forth ( -- )  flush-comment on
Line 717  set-current Line 725  set-current
 : process      ( xt -- )  : process      ( xt -- )
     bl word count rot      bl word count rot
     process-file ;      process-file ;
   

Removed from v.1.35  
changed lines
  Added in v.1.39


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