thiserror 2.0.18

derive(Error)
Documentation
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`