error[E0599]: my message --> $DIR/custom-on-unimplemented-diagnostic.rs:15:7 | LL | struct B; | -------- method `request` not found for this struct because it doesn't satisfy `B: ProviderExt` or `B: ProviderLt` ... LL | B.request(); | ^^^^^^^ my label | note: trait bound `B: ProviderLt` was not satisfied --> $DIR/custom-on-unimplemented-diagnostic.rs:10:18 | LL | impl ProviderExt for T {} | ^^^^^^^^^^ ----------- - | | | unsatisfied trait bound introduced here = note: my note note: the trait `ProviderLt` must be implemented --> $DIR/custom-on-unimplemented-diagnostic.rs:2:1 | LL | pub trait ProviderLt {} | ^^^^^^^^^^^^^^^^^^^^ = help: items from traits can only be used if the trait is implemented and in scope note: `ProviderExt` defines an item `request`, perhaps you need to implement it --> $DIR/custom-on-unimplemented-diagnostic.rs:4:1 | LL | pub trait ProviderExt { | ^^^^^^^^^^^^^^^^^^^^^ error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0599`.