Collateral exceptions seem to be broken
Jonathan M Davis
jmdavisProg at gmx.com
Sun May 8 15:14:52 PDT 2011
> Yeah it seems to be fixed in 2.053 beta.
>
> But why is the stack trace printed out? Is that the new norm when
> printing caught exceptions with write()?
>
> Regardless of that, I don't get any symbols printed out when building
> with dmd -g -debug:
>
> C:\dmd2\windows\bin>dmd -debug -g test.d
> C:\dmd2\windows\bin>test
> object.Exception at test.d(24): thrown from foo
> ----------------
> 42BA60
> 42B8D7
> 40203E
> 4059B8
> 4059F7
> 4055F3
> 45BEED
> object.Exception at test.d(36): thrown from bar #3
> ----------------
> 42BA60
> 42B8D7
> 402115
> 40203E
> 4059B8
> 4059F7
> 4055F3
> 45BEED
> object.Exception at test.d(36): thrown from bar #2
> ----------------
> 42BA60
> 42B8D7
> 4021D6
> 402115
> 40203E
> 4059B8
> 4059F7
> 4055F3
> 45BEED
> object.Exception at test.d(36): thrown from bar #1
> ----------------
> 42BA60
> 42B8D7
> ...
>
> Where are the symbols? :o
Recent work has been done on chained exceptions, so that could definitely
change their behavior. And you should definitely get the symbols on Linux if
you compile with the standard dmd.conf. If you aren't doing that for some
reason, then you need to make sure that you use -L--export-dynamic.
- Jonathan M Davis
More information about the Digitalmars-d
mailing list