File tree 1 file changed +5
-5
lines changed
1 file changed +5
-5
lines changed Original file line number Diff line number Diff line change @@ -3536,11 +3536,11 @@ impl<T> Default for Weak<T> {
3536
3536
}
3537
3537
}
3538
3538
3539
- // NOTE: We wrapping_add here to deal with mem::forget safely. In particular
3540
- // if you mem::forget Rcs (or Weaks), the ref-count can overflow, and then
3541
- // you can free the allocation while outstanding Rcs (or Weaks) exist.
3542
- // We abort because this is such a degenerate scenario that we don't care about
3543
- // what happens -- no real program should ever experience this.
3539
+ // NOTE: If you mem::forget Rcs (or Weaks), drop is skipped and the ref-count
3540
+ // is not decremented, meaning the ref-count can overflow, and then you can
3541
+ // free the allocation while outstanding Rcs (or Weaks) exist, which would be
3542
+ // unsound. We abort because this is such a degenerate scenario that we don't
3543
+ // care about what happens -- no real program should ever experience this.
3544
3544
//
3545
3545
// This should have negligible overhead since you don't actually need to
3546
3546
// clone these much in Rust thanks to ownership and move-semantics.
You can’t perform that action at this time.
0 commit comments