D 2.0 Stacktrace
Benjamin Thaut
code at benjamin-thaut.de
Mon Oct 11 01:04:04 PDT 2010
Am 10.10.2010 21:31, schrieb Denis Koroskin:
> On Wed, 06 Oct 2010 15:50:25 +0400, Benjamin Thaut
> <code at benjamin-thaut.de> wrote:
>
>> I wrote a small piece of sourcecode that generates stacktraces in D
>> 2.0 under
>> windows. It works both with the pdb and cv debug symbol format. For
>> Exceptions
>> that are derived from the Error class the trace information is
>> automatically
>> appended, this causes all builtin D errors to get a stacktrace
>> information.
>> The only point where this does not work is the Access Vioaltion error,
>> as it
>> does not call the stacktrace callback function for some reason.
>>
>> It is very easy to use, just copy the two files from the zip archive
>> to your
>> root source directory and import the stacktrace module inside your
>> main file.
>> For more informaiton and the download go to:
>> http://3d.benjamin-thaut.de
>>
>> Let me know what you think.
>>
>> Kind Regards
>> Benjamin Thaut
>
> I noticed your stacktraces should symbols but no file name/line numbers.
>
> I've sent another Stacktracer implementation to Phobos mailing list
> recently that primarily shows file name/line number while manually
> parsing .map file for symbolic info and shows none if .map file is
> absent. That was being criticized, and I agree with it. It also doesn't
> depend on dbghelp.dll and is able to show sane results even when the
> said .dll is missing.
>
> I think we could merge our projects, taking advantages from both. What
> do you think?
My stackwalker does show filenames and line numbers but you need to
compile with -g -debug so that there is line/file information in the
symbols.
If you look at the example stacktrace at
http://3d.benjamin-thaut.de/?p=15 you can see filenames and line numbers
--
Kind Regards
Benjamin Thaut
More information about the Digitalmars-d-announce
mailing list