Diff for /gforth/kernel/errore.fs between versions 1.16 and 1.17

version 1.16, 2007/12/31 19:02:25 version 1.17, 2012/06/23 20:38:01
Line 42  has? OS [IF] Line 42  has? OS [IF]
     >exec  r> to outfile-id ;      >exec  r> to outfile-id ;
 [THEN]  [THEN]
   
 : .error ( n -- )  : error$ ( n -- addr u ) \ gforth
 [ has? OS [IF] ]      \G converts an error to a string
     >stderr  
 [ [THEN] ]  
     ErrLink      ErrLink
     BEGIN @ dup      BEGIN @ dup
     WHILE      WHILE
         2dup cell+ @ =          2dup cell+ @ =
         IF          IF
             2 cells + count type drop EXIT THEN              2 cells + count rot drop EXIT THEN
     REPEAT      REPEAT
     drop      drop
 [ has? os [IF] ]  [ has? os [IF] ]
     dup -511 -255 within      dup -511 -255 within
     IF      IF
         256 + negate strsignal type EXIT          256 + negate strsignal EXIT
     THEN      THEN
     dup -2047 -511 within      dup -2047 -511 within
     IF      IF
         512 + negate strerror type EXIT          512 + negate strerror EXIT
     THEN      THEN
 [ [THEN] ]  [ [THEN] ]
     ." error " dec. ;      base @ >r decimal
       s>d tuck dabs <# #s rot sign s" error #" holds #> r> base ! ;
   
   : .error ( n -- )
   [ has? OS [IF] ]
       >stderr
   [ [THEN] ]
       error$ type ;
   

Removed from v.1.16  
changed lines
  Added in v.1.17


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