Expand the primary span of E0277 when the immediate unmet bound is not what the user wrote: ``` error[E0277]: the trait bound `i32: Bar` is not satisfied --> f100.rs:6:6 | 6 | <i32 as Foo>::foo(); | ^^^ the trait `Bar` is not implemented for `i32`, which is required by `i32: Foo` | help: this trait has no implementations, consider adding one --> f100.rs:2:1 | 2 | trait Bar {} | ^^^^^^^^^ note: required for `i32` to implement `Foo` --> f100.rs:3:14 | 3 | impl<T: Bar> Foo for T {} | --- ^^^ ^ | | | unsatisfied trait bound introduced here ``` Fix #40120.
100 lines
3.3 KiB
Plaintext
100 lines
3.3 KiB
Plaintext
error[E0277]: the trait bound `[u16; 3]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:15:5
|
|
|
|
|
LL | <u8 as Baz>::Quaks: Bar,
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^ the trait `Bar` is not implemented for `[u16; 3]`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
= help: see issue #48214
|
|
= help: add `#![feature(trivial_bounds)]` to the crate attributes to enable
|
|
|
|
error[E0277]: the trait bound `[[u16; 3]; 2]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:14:5
|
|
|
|
|
LL | [<u8 as Baz>::Quaks; 2]: Bar,
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Bar` is not implemented for `[[u16; 3]; 2]`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
= help: see issue #48214
|
|
= help: add `#![feature(trivial_bounds)]` to the crate attributes to enable
|
|
|
|
error[E0277]: the trait bound `[u16; 3]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:21:6
|
|
|
|
|
LL | impl Foo for FooImpl {}
|
|
| ^^^ the trait `Bar` is not implemented for `[u16; 3]`, which is required by `<u8 as Baz>::Quaks: Bar`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
note: required by a bound in `Foo`
|
|
--> $DIR/issue-67185-2.rs:15:25
|
|
|
|
|
LL | trait Foo
|
|
| --- required by a bound in this trait
|
|
...
|
|
LL | <u8 as Baz>::Quaks: Bar,
|
|
| ^^^ required by this bound in `Foo`
|
|
|
|
error[E0277]: the trait bound `[[u16; 3]; 2]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:21:6
|
|
|
|
|
LL | impl Foo for FooImpl {}
|
|
| ^^^ the trait `Bar` is not implemented for `[[u16; 3]; 2]`, which is required by `[<u8 as Baz>::Quaks; 2]: Bar`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
note: required by a bound in `Foo`
|
|
--> $DIR/issue-67185-2.rs:14:30
|
|
|
|
|
LL | trait Foo
|
|
| --- required by a bound in this trait
|
|
LL | where
|
|
LL | [<u8 as Baz>::Quaks; 2]: Bar,
|
|
| ^^^ required by this bound in `Foo`
|
|
|
|
error[E0277]: the trait bound `[[u16; 3]; 2]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:25:14
|
|
|
|
|
LL | fn f(_: impl Foo) {}
|
|
| ^^^ the trait `Bar` is not implemented for `[[u16; 3]; 2]`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
note: required by a bound in `Foo`
|
|
--> $DIR/issue-67185-2.rs:14:30
|
|
|
|
|
LL | trait Foo
|
|
| --- required by a bound in this trait
|
|
LL | where
|
|
LL | [<u8 as Baz>::Quaks; 2]: Bar,
|
|
| ^^^ required by this bound in `Foo`
|
|
|
|
error[E0277]: the trait bound `[u16; 3]: Bar` is not satisfied
|
|
--> $DIR/issue-67185-2.rs:25:14
|
|
|
|
|
LL | fn f(_: impl Foo) {}
|
|
| ^^^ the trait `Bar` is not implemented for `[u16; 3]`
|
|
|
|
|
= help: the following other types implement trait `Bar`:
|
|
[u16; 4]
|
|
[[u16; 3]; 3]
|
|
note: required by a bound in `Foo`
|
|
--> $DIR/issue-67185-2.rs:15:25
|
|
|
|
|
LL | trait Foo
|
|
| --- required by a bound in this trait
|
|
...
|
|
LL | <u8 as Baz>::Quaks: Bar,
|
|
| ^^^ required by this bound in `Foo`
|
|
|
|
error: aborting due to 6 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0277`.
|