Mention implementers of unsatisfied trait
When encountering an unsatisfied trait bound, if there are no other suggestions, mention all the types that *do* implement that trait: ``` error[E0277]: the trait bound `f32: Foo` is not satisfied --> $DIR/impl_wf.rs:22:6 | LL | impl Baz<f32> for f32 { } | ^^^^^^^^ the trait `Foo` is not implemented for `f32` | = help: the following other types implement trait `Foo`: Option<T> i32 str note: required by a bound in `Baz` --> $DIR/impl_wf.rs:18:31 | LL | trait Baz<U: ?Sized> where U: Foo { } | ^^^ required by this bound in `Baz` ``` Mention implementers of traits in `ImplObligation`s. Do not mention other `impl`s for closures, ranges and `?`.
This commit is contained in:
parent
6a9080b25e
commit
3aac307ca6
115 changed files with 690 additions and 183 deletions
|
@ -180,6 +180,9 @@ symbols! {
|
|||
Error,
|
||||
File,
|
||||
FileType,
|
||||
Fn,
|
||||
FnMut,
|
||||
FnOnce,
|
||||
FormatSpec,
|
||||
Formatter,
|
||||
From,
|
||||
|
@ -248,6 +251,7 @@ symbols! {
|
|||
RustcEncodable,
|
||||
Send,
|
||||
SeqCst,
|
||||
SliceIndex,
|
||||
Some,
|
||||
String,
|
||||
StructuralEq,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue