Bug 16379 – merging coverage sometimes overwrites existing results

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P1
Component
druntime
Product
D
Version
D2
Platform
All
OS
All
Creation time
2016-08-12T03:34:00Z
Last change time
2016-08-12T04:39:44Z
Assigned to
nobody
Creator
code

Comments

Comment #0 by code — 2016-08-12T03:34:56Z
https://github.com/dlang/phobos/pull/4719#issuecomment-239184919 Running phobos unittests with coverage for std.json multiple times correctly merges the results. generated/linux/debug/64/unittest/test_runner std.json Running std.stdio (and only that module) overwrites the std-json.lst file before rereading this. generated/linux/debug/64/unittest/test_runner std.stdio
Comment #1 by greensunny12 — 2016-08-12T03:37:50Z
The issue seems to be that `doTest` is called 4x for std.stdio - see this PR with some explanation on this behavior. https://github.com/dlang/druntime/pull/1629
Comment #2 by code — 2016-08-12T04:39:44Z
Fixed by https://github.com/dlang/druntime/pull/1629, the merge flag was set in main after running std.stdio tests which forks. Those forks would then overwrite the coverage output.