Diff for /gforth/prims2x.fs between versions 1.45 and 1.46

version 1.45, 2000/07/14 08:55:15 version 1.46, 2000/08/14 19:15:53
Line 216  char a char z ..  char A char Z ..  unio Line 216  char a char z ..  char A char Z ..  unio
 char 0 char 9 ..                                        charclass digit  char 0 char 9 ..                                        charclass digit
 bl singleton tab-char over add-member                   charclass white  bl singleton tab-char over add-member                   charclass white
 nl-char singleton eof-char over add-member complement   charclass nonl  nl-char singleton eof-char over add-member complement   charclass nonl
 nl-char singleton eof-char over add-member char : over add-member complement  charclass nocolonnl  nl-char singleton eof-char over add-member
 bl 1+ maxchar ..                                        charclass nowhite      char : over add-member complement                   charclass nocolonnl
   bl 1+ maxchar .. char \ singleton complement intersection
                                                           charclass nowhitebq
   bl 1+ maxchar ..                                        charclass nowhite
 char " singleton eof-char over add-member complement    charclass noquote  char " singleton eof-char over add-member complement    charclass noquote
 nl-char singleton                                       charclass nl  nl-char singleton                                       charclass nl
 eof-char singleton                                      charclass eof  eof-char singleton                                      charclass eof
Line 226  eof-char singleton     charclass eof Line 229  eof-char singleton     charclass eof
 (( letter (( letter || digit )) **  (( letter (( letter || digit )) **
 )) <- c-name ( -- )  )) <- c-name ( -- )
   
 nowhite ++  (( nowhitebq nowhite ** ))
 <- name ( -- )  <- name ( -- )
   
 Variable forth-flag  Variable forth-flag
Line 253  Variable c-flag Line 256  Variable c-flag
                 forth-flag @                  forth-flag @
                 IF  ." has? " type ."  [IF]"  cr THEN                  IF  ." has? " type ."  [IF]"  cr THEN
         ELSE    2drop          ELSE    2drop
                 c-flag @              c-flag @      IF  ." #endif"  cr THEN
                 IF  ." #endif"  cr THEN              forth-flag @  IF  ." [THEN]"  cr THEN
                 forth-flag @  
                 IF  ." [THEN]"  cr THEN  
         THEN }}          THEN }}
 )) <- if-comment  )) <- if-comment
   
Line 270  Variable c-flag Line 271  Variable c-flag
 )) <- stack-effect ( -- )  )) <- stack-effect ( -- )
   
 (( {{ s" " doc 2! s" " forth-code 2! }}  (( {{ s" " doc 2! s" " forth-code 2! }}
    (( comment || nl )) **  
    (( {{ line @ name-line ! filename 2@ name-filename 2! }}     (( {{ line @ name-line ! filename 2@ name-filename 2! }}
       {{ start }} name {{ end 2dup forth-name 2! c-name 2! }}  white ++        {{ start }} name {{ end 2dup forth-name 2! c-name 2! }}  white ++
       ` ( white ** {{ start }} stack-effect {{ end stack-string 2! }} ` ) white **        ` ( white ** {{ start }} stack-effect {{ end stack-string 2! }} ` ) white **
Line 281  Variable c-flag Line 281  Variable c-flag
    {{ skipsynclines off line @ c-line ! filename 2@ c-filename 2! start }} (( nocolonnl nonl **  nl )) ** {{ end c-code 2! skipsynclines on }}     {{ skipsynclines off line @ c-line ! filename 2@ c-filename 2! start }} (( nocolonnl nonl **  nl )) ** {{ end c-code 2! skipsynclines on }}
    (( ` :  nl     (( ` :  nl
       {{ start }} (( nonl ++  nl )) ++ {{ end forth-code 2! }}        {{ start }} (( nonl ++  nl )) ++ {{ end forth-code 2! }}
    )) ??     )) ?? {{ printprim }}
    (( nl || eof ))     (( nl || eof ))
 )) <- primitive ( -- )  )) <- primitive ( -- )
   
 (( (( primitive {{ printprim }} )) ** eof ))  (( (( comment || primitive || nl )) ** eof ))
 parser primitives2something  parser primitives2something
 warnings @ [IF]  warnings @ [IF]
 .( parser generated ok ) cr  .( parser generated ok ) cr

Removed from v.1.45  
changed lines
  Added in v.1.46


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