Bug 19671 – Function-local static/shared static data must be destroyed upon thread (process respectively) termination

Status
NEW
Severity
major
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2019-02-12T18:15:10Z
Last change time
2024-12-13T19:02:24Z
Assigned to
No Owner
Creator
Andrei Alexandrescu
Moved to GitHub: dmd#19538 →

Comments

Comment #0 by andrei — 2019-02-12T18:15:10Z
This is an important core language issue because a fundamental invariant is that data is being destroyed appropriately. Most C++ implementation use atexit() to queue destruction of function-level statics. I assume the new thread_local C++ facility is typically implemented with the help of pthread_key_create(). We need to devise the appropriate mechanisms.
Comment #1 by robert.schadek — 2024-12-13T19:02:24Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/19538 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB