On Friday, 10 June 2022 at 14:56:24 UTC, Steven Schveighoffer wrote:
On 6/10/22 3:46 AM, Mike Parker wrote:
I think this is a case where having a warning that's on by default, and which can be explicitly disabled, is useful. "Blah blah .init blah blah. See link-to-something-in-docs. Is this what you intended?"

Here the language is being extremely unsafe.

Not only is the field shared between instances, it's shared across instances in *different threads*.

Discovered circa 2009: https://issues.dlang.org/show_bug.cgi?id=2947

Thanks for the pointer. #dbugfix 2947

It should be illegal to declare a field this way that has mutable references without being `shared`. End of story.


Reply via email to