@@ -298,18 +298,18 @@ trait EvalContextPrivExt<'tcx>: crate::MiriInterpCxExt<'tcx> {
298298
299299 // When adding a new node, the SIFA of its parents needs to be updated, potentially across
300300 // the entire memory range. For the parts that are being accessed below, the access itself
301- // trivially takes care of that. However, we have to do some more work to also deal with
302- // the parts that are not being accessed. Specifically what we do is that we
303- // call `update_last_accessed_after_retag` on the SIFA of the permission set for the part of
304- // memory outside `perm_map` -- so that part is definitely taken care of. The remaining concern
305- // is the part of memory that is in the range of `perms_map`, but not accessed below.
306- // There we have two cases:
307- // * If we do have an `UnsafeCell` (`has_unsafe_cell` becomes true) , then the non-accessed part
308- // uses `nonfreeze_perm`, so the `nonfreeze_perm` initialized parts are also fine. We enforce
309- // the `freeze_perm` parts to be accessed , and thus everything is taken care of.
310- // * If there is no `UnsafeCell `, then `freeze_perm` is used everywhere (both inside and outside the initial range),
311- // and we update everything to have the `freeze_perm`'s SIFA, so there are no issues. (And this assert below is not
312- // actually needed in this case).
301+ // trivially takes care of that. However, we have to do some more work to also deal with the
302+ // parts that are not being accessed. Specifically what we do is that we call
303+ // `update_last_accessed_after_retag` on the SIFA of the permission set for the part of
304+ // memory outside `perm_map` -- so that part is definitely taken care of. The remaining
305+ // concern is the part of memory that is in the range of `perms_map`, but not accessed
306+ // below. There we have two cases:
307+ // * If the type is `!Freeze` , then the non-accessed part uses `nonfreeze_perm`, so the
308+ // `nonfreeze_perm` initialized parts are also fine. We enforce the `freeze_perm` parts to
309+ // be accessed via the assert below , and thus everything is taken care of.
310+ // * If the type is `Freeze `, then `freeze_perm` is used everywhere (both inside and outside
311+ // the initial range), and we update everything to have the `freeze_perm`'s SIFA, so there
312+ // are no issues. (And this assert below is not actually needed in this case).
313313 assert ! ( new_perm. freeze_access) ;
314314
315315 let protected = new_perm. protector . is_some ( ) ;
0 commit comments