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.
|
||
|---|---|---|
| .. | ||
| auxiliary | ||
| instantiable.rs | ||
| issue-26548-recursion-via-normalize.rs | ||
| issue-26548-recursion-via-normalize.stderr | ||
| issue-38591-non-regular-dropck-recursion.polonius.stderr | ||
| issue-38591-non-regular-dropck-recursion.rs | ||
| issue-38591-non-regular-dropck-recursion.stderr | ||
| issue-83150.rs | ||
| issue-83150.stderr | ||
| issue-86784.rs | ||
| issue-95134.rs | ||
| recursion.polonius.stderr | ||
| recursion.rs | ||
| recursion.stderr | ||
| recursive-enum.rs | ||
| recursive-enum.stderr | ||
| recursive-reexports.rs | ||
| recursive-reexports.stderr | ||
| recursive-requirements.rs | ||
| recursive-requirements.stderr | ||
| recursive-static-definition.rs | ||
| recursive-static-definition.stderr | ||
| recursive-types-are-not-uninhabited.rs | ||
| recursive-types-are-not-uninhabited.stderr | ||