error[E0599]: the method `as_dyn_error` exists for reference `&NotError`, but its trait bounds were not satisfied --> tests/ui/source-enum-not-error.rs:9:14 | 4 | pub struct NotError; | ------------------- doesn't satisfy `NotError: AsDynError<'_>` or `NotError: std::error::Error` ... 9 | Broken { source: NotError }, | ^^^^^^ method cannot be called on `&NotError` due to unsatisfied trait bounds | = note: the following trait bounds were not satisfied: `NotError: std::error::Error` which is required by `NotError: AsDynError<'_>` `&NotError: std::error::Error` which is required by `&NotError: AsDynError<'_>` note: the trait `std::error::Error` must be implemented --> $RUST/core/src/error.rs | | pub trait Error: Debug + Display { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `as_dyn_error`, perhaps you need to implement it: candidate #1: `AsDynError`