Bug 24847 – std.concurrency.initOnce does not work with -preview=nosharedaccess

Status
NEW
Severity
normal
Priority
P1
Component
phobos
Product
D
Version
D2
Platform
All
OS
All
Creation time
2024-11-07T10:51:58Z
Last change time
2024-12-01T16:43:10Z
Assigned to
No Owner
Creator
Sönke Ludwig
Moved to GitHub: phobos#9880 →

Comments

Comment #0 by sludwig — 2024-11-07T10:51:58Z
--- import std.concurrency; class C {} shared C instance; void main() { auto obj = initOnce!instance(new C); } --- When compiling with DMD 2.109.1 and `-preview=nosharedaccess`, results in: /dlang/dmd/linux/bin64/../../src/phobos/std/concurrency.d(2751): Error: direct access to shared `mutex` is not allowed, see `core.atomic` /dlang/dmd/linux/bin64/../../src/phobos/std/concurrency.d(2755): Error: direct access to shared `instance` is not allowed, see `core.atomic` /dlang/dmd/linux/bin64/../../src/phobos/std/concurrency.d(2684): Error: template instance `std.concurrency.initOnce!(instance)` error instantiating onlineapp.d(6): instantiated from here: `initOnce!(instance)`
Comment #1 by robert.schadek — 2024-12-01T16:43:10Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/phobos/issues/9880 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB