https://issues.dlang.org/show_bug.cgi?id=17567
Andrei Alexandrescu <and...@erdani.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |and...@erdani.com --- Comment #1 from Andrei Alexandrescu <and...@erdani.com> --- This is not possible. Thanks Timon Gehr for explaining this to me. Consider: shared int* p; struct S { int x; void func() shared { p = &x; } } void bug() { auto p = new S; p.func; ++p.x; } At this point we have threads getting shared access to x, but the current thread believes x is unshared. --