On Tuesday, 2 April 2013 at 12:18:00 UTC, Andrej Mitrovic wrote:
On 4/1/13, Walter Bright <newshou...@digitalmars.com> wrote:
On 4/1/2013 4:08 AM, Lars T. Kyllingstad wrote:
It's time to clean up this mess.
As for why finally blocks are not executed for Error exceptions
They seem to be executed:
void main()
{
try
{
throw new Error("");
}
finally
{
assert(0);
}
}
This will throw an AssertError.
The spec makes no such guarantee, DMD just doesn't bother to not
execute it. It is one of the many things which will break code
when DMD decides to follow the spec.