Overview
Artifact ID: | 478041416b70a5f37845f4aa8a4728088cd06f1a |
---|---|
Page Name: | using trace with the megatest executable |
Date: | 2014-11-26 15:21:02 |
Original User: | matt |
Parent: | b6cd6ec04c546827c0ce1ab343858b92b8001e99 (diff) |
Next | 3b3c99e60ff459d54ef059b96b034bc6e010b313 |
Content
Using trace to debug Megatest issues
NOTE: I have found this method to be very efficient for debugging in general and use it with Megatest and in most of my programs.
- Create ~/.megatestrc
(use trace) (import trace) ;; list the functions you think might illuminate the problem here runs:process-expanded-tests )
- Patch trace to emit a little info on where the function was called
chicken-install -r trace cd trace patch -p0 <<EOF > *** trace.scm 2014-11-26 09:29:50.000000000 -0700 > --- ../../trace/trace.scm 2014-11-25 21:12:41.000000000 -0700 > *************** > *** 61,66 **** > --- 61,68 ---- > (trace-indent) > (set! *trace-indent-level* (fx+ 1 *trace-indent-level*)) > (write (cons name args) port) > + (write ", Called from: " port) > + (write (conc (car (reverse (get-call-chain))))) > (write-char #\newline port) > (flush-output port) ) ) > EOF chicken-install
- Run your megatest runs and dig through the various logs :)