On Wed, 16 May 2012 13:19:01 -0400, David Nadlinger <[email protected]> wrote:

On Wednesday, 16 May 2012 at 13:10:05 UTC, Steven Schveighoffer wrote:
I don't see exception handling in the generated code (at least I don't see the _d_local_unwind2), I wonder a) if this is more efficient than scope(exit), and b) if so, why can't the compiler do this automatically?

I think you might be misreading the assembly – which operating system are you on? You can only expect to see _d_local_unwind on Windows, Dwarf EH is implemented differently.

OK, that probably explains it :)

In the first case, where the code can't throw, the exception handling code is probably not generated at all.

Yes, I see that the compiler likely does the right thing, and I just implemented a totally useless feature in the face of scope(exit) :)

I was kind of curious though, if it would work!

-Steve

Reply via email to