{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreifwpqqmez5ngkifh3fbuuutvlh7vpmdfdw3hgwdkmbb45cnwkdt3q",
    "uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mm2xledt5ps2"
  },
  "path": "/t/reducing-raw-pointer-footguns-preventing-reference-aliasing-violations-at-compile-time/24301?page=2#post_39",
  "publishedAt": "2026-05-17T16:39:33.000Z",
  "site": "https://internals.rust-lang.org",
  "textContent": "One powerful escape hatch is “you can take the mutable/immutable reference in the guard’s callback and do anything you could do to a normal mutable reference, within that scope, including mixing raw pointers and references”. The callback could be arbitrarily complicated, potentially the equivalent of a full `fn main`.\n\nThis would be an utterly ineffective use of the guard which I don’t thing anybody would _want_ to do, but still _possible_.",
  "title": "Reducing Raw Pointer Footguns: Preventing Reference Aliasing Violations at Compile Time"
}