[dmd-internals] Backtraces under Linux

Steve Schveighoffer schveiguy at yahoo.com
Fri Aug 6 04:47:57 PDT 2010


Can the demangling be done lazily?  That is, you only demangle when the 
stack-trace is printed?

If stack traces must be constructed at throw time and that involves heavy GC 
usage, this is a non-starter, because exceptions can be used for flow control, 
not just printing.

-Steve



>
>From: Sean Kelly <sean at invisibleduck.org>
>To: Discuss the internals of DMD  <dmd-internals at puremagic.com>
>Sent: Thu, August 5, 2010 7:11:35 PM
>Subject: Re: [dmd-internals] Backtraces under Linux
>
>
>The blocker for adopting this code as-is is that it depends on Phobos. 
> -L--export-dynamic still has to be added to linux/bin/dmd.conf in the install 
>package, and I'm working on a demangler.  I'd just copy the one from Phobos, but 
>
>it works purely with strings using array concatenation and I want to avoid 
>hitting the GC so hard when an exception is thrown.  I've discovered that 
>writing such a demangler is kind of a pain because things have to be reordered 
>during demangling (where the qualified name is for function vs. non-function 
>types, for example).  Anyway, almost done, but it's taking the backseat to other 
>
>work ATM.  Thanks for the reminder!
>
>On Aug 4, 2010, at 5:43 AM, Jason House wrote:
>
>I just want to ensure this post to digitalmars.D doesn't get  lost.



      


More information about the dmd-internals mailing list