[Issue 15947] New: [REG 2.069.0?] simple multithreaded program + "-profile=gc" = crash
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Thu Apr 21 08:45:35 PDT 2016
https://issues.dlang.org/show_bug.cgi?id=15947
Issue ID: 15947
Summary: [REG 2.069.0?] simple multithreaded program +
"-profile=gc" = crash
Product: D
Version: D2
Hardware: All
OS: Windows
Status: NEW
Severity: regression
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: gassa at mail.ru
-----prfail1.d-----
import std.concurrency;
void someWork () {auto x = [1];}
void main () {spawn (&someWork);}
-----
The above program crashes with 2.071.0 down to 2.069.0 but still works on
2.068.2. The command line is "dmd -g -profile=gc prfail1.d" on Windows
(compiled to 32-bit by default).
The crash happens almost always, >90% of runs of the compiled program. Here's
the error output:
-----
object.Error@(0): Access Violation
----------------
0x00409651 in nothrow int rt.profilegc._staticDtor407().__foreachbody2(ref
immutable(char)[], ref rt.profilegc.Entry)
0x00409986 in void rt.profilegc.__moddtor()
0x00427444 in __threadstartex
0x77869ED2 in RtlInitializeExceptionChain
0x77869EA5 in RtlInitializeExceptionChain
-----
With added "-m64", it just crashes and does not print anything.
This issue report originated as a forum post:
https://forum.dlang.org/post/vsjllasdndfrhhziiece@forum.dlang.org
--
More information about the Digitalmars-d-bugs
mailing list