{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreifnqzg6b3ht62g7adjkctlsr33zlozzj6vnrq7jafkqshp7ao5uga",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mlehpgiogu42"
},
"path": "/t/type-inference-breaks-when-a-loop-is-added-between-inference-points/24232#post_5",
"publishedAt": "2026-05-08T18:43:52.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "quinedot:\n\n> Right, your playground demonstrated that. But your text says RA specifically. Do you have any reason to think it's RA specific?\n\nI initially thought it was caused by Rust Analyzer, but after testing directly with `rustc` (as you suggested), I encountered the same issue. This suggests it may be related to the compiler itself.\n\nquinedot:\n\n> Additionally, do you have any reason to think it's actually \"recently\"? I spot-checked the example back through 1.60 and didn't find a `rustc` version it worked on.\n\nI think the reason I never encountered this bug before is that I usually specified return types explicitly. Since refactoring the code to make it less verbose, I’ve indirectly uncovered this issue.",
"title": "Type inference breaks when a loop is added between inference points"
}