D 1.076 Alpha for Windows 64 bits, works with VS 2010

Brad Roberts braddr at slice-2.puremagic.com
Fri Sep 28 12:39:21 PDT 2012


On Fri, 28 Sep 2012, Walter Bright wrote:

> On 9/27/2012 11:01 PM, Jacob Carlborg wrote:
> > On 2012-09-27 21:51, Walter Bright wrote:
> > 
> > > Well, I did. The EH mechanism in dmd Win64 is the same as that used for
> > > dmd Linux, OSX and FreeBSD, 32 and 64.
> > 
> > What does that practically mean from the users point of view?
> 
> It means D cannot throw or catch VC exceptions, and VC code cannot throw or
> catch D exceptions.
> 
> Pretty much just like on Linux/OSX/FreeBSD, which doesn't seem to be a
> problem.

It's more than just catching.  That's a relatively minor issue.  The 
bigger one is stack unwinding and related cleanups.  Consider: c++ 
function with local variables that have dtors that calls a D function that 
throws.  Those c++ locals will never have their dtors called.

It's not a huge problem, but the sum of the problems add up to pain and 
will need to be fixed at some point.  The lack of pain today is that it's 
barely feasible to mix languages where more than one has any exception 
handling right now.  Something of a catch-22 of issues, imho.


More information about the Digitalmars-d-announce mailing list