[Issue 1001] print stack trace (in debug mode) when program die
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed May 26 05:41:38 PDT 2010
http://d.puremagic.com/issues/show_bug.cgi?id=1001
Don <clugdbug at yahoo.com.au> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |clugdbug at yahoo.com.au
--- Comment #23 from Don <clugdbug at yahoo.com.au> 2010-05-26 05:41:33 PDT ---
(In reply to comment #22)
> If a recursive function keeps calling itself, or two functions
> keep calling each other (other possibilities exist, but those two cover most
> cases), the stack trace can become too much long to print and read.
>
> So just looking at the latest stack frame printed and penultimate stack frame
> printed it can compress it, reporting only how many time the last one or the
> last two ones are repeated (the uncompressed stack trace can be obtained too
> (on request if the compressed one is on default, otherwise it's the compressed
> one that's on request), that shows all the line numbers too).
That's what's done with the template instantiation backtraces in the compiler,
and I think it works very well. The basic idea is to always print out the first
few frames, and only start looking for recursion beginning at frame 3 or 4.
I intend to add something similar to the interpreter, so that we have a CTFE
stack trace. Still needs work though.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list