Why is it that this code behaves the way it does?
impl<X> Printer for X cover every possible type including
dyn Unsized ? Is there some implicit filtering of what
I'd expect an error on line 10 to be what it is when you uncomment the specialization at lines 25-29 that is an error indicating that
X is not
core::mem::size_of::<X>() wouldn't work on every
X. But it seems somehow Rust decides to only take
where X: Sized implicitly?
Is this behavior documented?