summaryrefslogtreecommitdiff
path: root/rts/sm/MarkWeak.c
diff options
context:
space:
mode:
authorTakano Akio <tak@anoak.io>2016-05-12 15:45:44 +0200
committerBen Gamari <ben@smart-cactus.org>2016-05-12 17:33:39 +0200
commit7c0b595e55d31f9f89e6dede11981e942c5bb32f (patch)
treec702a17798f2a9629d648e01eed90b4fe0819057 /rts/sm/MarkWeak.c
parent0c0129b6a82a87a9bba19f27a4b19fec9ccc5a8d (diff)
downloadhaskell-7c0b595e55d31f9f89e6dede11981e942c5bb32f.tar.gz
Fix comments about scavenging WEAK objects
This is a follow-up of D2189. If fixes some comments, deletes a section in the User's Guide about the bug, and updates .mailmap as suggested on the WorkinConventions wiki page. Test Plan: It compiles. Reviewers: austin, simonmar, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2202 GHC Trac Issues: #11108
Diffstat (limited to 'rts/sm/MarkWeak.c')
-rw-r--r--rts/sm/MarkWeak.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/rts/sm/MarkWeak.c b/rts/sm/MarkWeak.c
index 2393536a74..7e3e1d5818 100644
--- a/rts/sm/MarkWeak.c
+++ b/rts/sm/MarkWeak.c
@@ -269,13 +269,7 @@ static rtsBool tidyWeakList(generation *gen)
gct->evac_gen_no = new_gen->no;
gct->failed_to_evac = rtsFalse;
- // evacuate the value and finalizer
- //
- // This WEAK object will not be considered by tidyWeakList
- // during this collection because it is in a generation >= N,
- // but it is on the mutable list so we must evacuate all of its
- // pointers because some of them may point into a younger
- // generation.
+ // evacuate the fields of the weak ptr
scavengeLiveWeak(w);
if (gct->failed_to_evac) {