{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidjrcaucghgcafbg3szqk5b6rji24vxbsm6m6ywkqoltoizawzstu",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mlhvvz64lwk2"
},
"path": "/t/include-racy-reads-in-rust-memory-model-with-maybeinvalid-t/24289#post_3",
"publishedAt": "2026-05-10T03:11:50.000Z",
"site": "https://internals.rust-lang.org",
"tags": [
"RFC 3301"
],
"textContent": "wyfo:\n\n> Writes remain non-racing plain writes, so `assume_valid` cannot return torn values. This is in my opinion the biggest advantage, as it removes an entire class of problems (for example the `Drop` issue of RFC 3301).\n\nBy \"cannot return torn values\" you mean that the cases where values would be torn, it'll just be UB instead, right?\n\nThough I'm not sure exactly on your subsequent point: what is \"the `Drop` issue of RFC 3301\" that you're avoiding? _(That's a long RFC and even longer discussion, so I have no idea what exactly you're referring to.)_",
"title": "Include racy reads in Rust memory model with `MaybeInvalid<T>`"
}