On Tuesday, 18 March 2014 at 23:56:15 UTC, Steven Schveighoffer wrote:
On Tue, 18 Mar 2014 19:48:45 -0400, Walter Bright <[email protected]> wrote:

On 3/18/2014 4:20 PM, Steven Schveighoffer wrote:
In a recent (well, recently pulled anyway) pull request that Monarch Dodra brought up, we debated what should be considered nothrow in the depths of druntime.

There's a lot of low hanging nothrow fruit in druntime that doesn't need analysis, it just needs to get done:

https://d.puremagic.com/issues/show_bug.cgi?id=12389

Can we mark _d_monitorenter and _d_monitorexit nothrow and have the compiler see that when using synchronized? This was the hurdle we couldn't overcome in the referenced pull request.

Should those be marked nothrow? What about pure and @safe?

I'd be inclined to say yes. Although monitors use lazy initialization, I think the failure to initialize a monitor should probably be considered an Error.

Reply via email to