Please sign in to comment.
[sgen] Break tracking weak references as early as possible.
Our tracking references code aimed to transform tracking references into normal weak references the first time their targets became unreachable. It was implemented incorrectly though, and is not the right thing to do in the first place anyway, because tracking references have to keep tracking if the target is re-registered for finalization. The incorrect implementation inadvertently handled re-registration correctly, but it kept the reference intact for one garbage collection cycle too many.
- Loading branch information...