doc/wg/core/notes/core-notes-2025-04-23.md
ldptr!() ptrreg!("s1") ", 1*{CLEN_BYTES}(s0). This is a load into a register of some stuff, but instead of having a load instruction directly, these are macros that turn into actual instructions based on the concrete architecture of the platform.ldptr is the load instruction. ptrreg is a register large enough to hold the data, similar to x86 ax eax rax.cargo expand or something like that.ldr in ARM maybe?ddc: TIfCfg!(is_cheri, CapabilityPtr). You have to handle both cases, either unit type or capability pointer type. But the size could be accessed from assemblyadd_assign which forces you to implement both casesddc field. There's really just one extra field that only needs to exist sometimes.ddc thing in particular, I think your advantage doesn't shine, because we rely on the final layout of this type in the assembly. So we wouldn't lose much in that use case with regular #defines.ddc field, there was a version with the if-config. We could compare those two implementations for ddc. Compared to capabilityptr where there maybe is a good alternative like Leon said. This will be more useful when subbing out fields here and thereddc and the capabilityptr right now?never type for thatddc with regular configs if you can. Then we can consider and I agree with what Amit proposed