On Friday, 29 August 2014 at 02:21:07 UTC, Andrei Alexandrescu wrote:
Dear community, are you ready for this?

https://issues.dlang.org/show_bug.cgi?id=2834
https://github.com/D-Programming-Language/druntime/pull/864

We must do it, and the way I see it the earlier the better. Shall we do it in 2.067?

This is a significant change of behavior. Should we provide a temporary flag or attribute to disable it?

It will _fix_ a lot of code, I expect, whereas it will probably break very little. The main thing that it would break would be if there's any GC heap allocation in a struct's destructor, but that will only matter if the struct is on the GC heap, and I think that it's something that we're pretty much stuck with. Certainly, that's not much of a loss in comparison to all of the bugs created by stuff like an array of std.stdio.Files. Maybe there's a problem if someone was manually destroying stuff? But if so, I don't see how we can avoid breaking their code. And they'll probably be much happier with this change just so long as they're aware of it, and hopefull the changelog is enough for that.

So, I'd say to put it in 2.067. I don't think that waiting buys us anything.

- Jonathan M Davis

Reply via email to