Diff for /gforth/backtrac.fs between versions 1.4 and 1.5

version 1.4, 2000/09/23 15:46:51 version 1.5, 2001/02/27 21:17:10
Line 77  IS 'cold Line 77  IS 'cold
     then ;      then ;
 IS store-backtrace  IS store-backtrace
   
 : print-backtrace ( addr1 addr2 -- )  : print-bt-entry ( return-stack-item -- )
     \G print a backtrace for the return stack addr1..addr2      cell - dup in-dictionary? over dup aligned = and
     cr ." Backtrace:"      if
     swap u+do          @ dup look
         cr  
         i @ dup hex. ( return-addr? )  
         cell - dup in-dictionary? over dup aligned = and  
         if          if
             @ look              .name drop
           else
               drop body> look \ !! check for "call" in cell before?
             if              if
                 .name                  .name
             else              else
                 drop                  drop
             then              then
         else  
             drop  
         then          then
       else
           drop
       then ;
   
   : print-backtrace ( addr1 addr2 -- )
       \G print a backtrace for the return stack addr1..addr2
       cr ." Backtrace:"
       swap u+do
           cr
           i @ dup hex. ( return-addr? )
           print-bt-entry
         cell +loop ;          cell +loop ;
   
 :noname ( -- )  :noname ( -- )

Removed from v.1.4  
changed lines
  Added in v.1.5


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