{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreiclaqz36m3lqh3ce6vy7bkyzkk3os5qun4i3aer3vfun6tatkfika",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3meetnsdpu3r2"
},
"path": "/t/what-s-where-size-kind-extra/23987#post_2",
"publishedAt": "2026-02-08T21:02:46.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "This bound is essentially used to declare that your const computation (`SIZE + Kind::EXTRA`) can be evaluated. In this particular case, it means that the addition should not overflow `usize`. It also can be used to declare that types created with the const computation result have a proper size (i.e. less than `isize::MAX` bytes) by using `u8` instead of `()` in the bound.\n\nIn other words, the bound prevents potential monomorphization errors (which are, unfortunately, already exist in Rust for some corner cases...).\n\ndaniel-pfeiffer:\n\n> is this temporary, until some prerequisite gets implemented?\n\nIIRC, yes. Though I can not link exact proposals out of my head.",
"title": "What’s where [(); SIZE + Kind::EXTRA]:?"
}