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 | ||
| mod_dir_implicit_aux | ||
| mod_dir_simple | ||
| module-polymorphism3-files | ||
| issue-56411-aux.rs | ||
| issue-56411.rs | ||
| issue-56411.stderr | ||
| issue-107649.rs | ||
| issue-107649.stderr | ||
| mod-inside-fn.rs | ||
| mod-view-items.rs | ||
| mod_dir_implicit.rs | ||
| mod_dir_path.rs | ||
| mod_dir_path2.rs | ||
| mod_dir_path3.rs | ||
| mod_dir_path_multi.rs | ||
| mod_dir_recursive.rs | ||
| mod_dir_simple.rs | ||
| mod_file.rs | ||
| mod_file_aux.rs | ||
| mod_file_with_path_attr.rs | ||
| path-invalid-form.rs | ||
| path-invalid-form.stderr | ||
| path-macro.rs | ||
| path-macro.stderr | ||
| path-no-file-name.rs | ||
| path-no-file-name.stderr | ||
| special_module_name.rs | ||
| special_module_name.stderr | ||
| special_module_name_ignore.rs | ||