mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-22 23:04:33 +00:00
b7fc1a7431
When a trait is not implemented for a type, but there *is* an `impl` for another type or different trait params, we format the output to use highlighting in the same way that E0308 does for types. The logic accounts for 3 cases: - When both the type and trait in the expected predicate and the candidate are different - When only the types are different - When only the trait generic params are different For each case, we use slightly different formatting and wording.
15 lines
605 B
Plaintext
15 lines
605 B
Plaintext
error[E0277]: the trait bound `String: Borrow<&str>` is not satisfied
|
|
--> $DIR/point-at-index-for-obligation-failure.rs:5:9
|
|
|
|
|
LL | &s
|
|
| ^^ the trait `Borrow<&str>` is not implemented for `String`
|
|
|
|
|
= help: the trait `Borrow<&_>` is not implemented for `String`
|
|
but trait `Borrow<_>` is implemented for it
|
|
= help: for that trait implementation, expected `str`, found `&str`
|
|
= note: required for `HashMap<String, String>` to implement `Index<&&str>`
|
|
|
|
error: aborting due to 1 previous error
|
|
|
|
For more information about this error, try `rustc --explain E0277`.
|