> <@dirbaio:matrix.org> there's the `fn source() -> &dyn Error` thing, but `dyn` is terrible for embedded * Do you have details on that? I'd love to understand that. I know how trait objects work and how they are implemented but have a hard time imagining why it should be "terrible". From what I've seen when experimenting with casts and trait objects on embedded (in `crosstrait`, `serde-erased` etc) it looked just fine. The one bloat case I can see now is trait objects preventing inlining of monomorphizations. `source() -> Option<&dyn Error>` is the point of the `Error` trait. Without it (and thus without `dyn`) there is nothing meaningful left.