You say runtime but that's ambiguous in this context. My point is that what gets emitted for Debug is just "type X lazily implements Debug" and you never even generate the equivalent Rust code for it until someone uses it and at that point you mark it with cold & inlineable if it's a small function.
> within spitting distance of any other representation
If marking Debug as #[inline] vs #[noinline] has an effect, it's clearly already true that there's a lot of time being spent on emitting the Debug trait eagerly and having it go through all the compiler stages.
> within spitting distance of any other representation
If marking Debug as #[inline] vs #[noinline] has an effect, it's clearly already true that there's a lot of time being spent on emitting the Debug trait eagerly and having it go through all the compiler stages.