about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-11-21 07:15:32 +0000
committerbors <bors@rust-lang.org>2021-11-21 07:15:32 +0000
commitb8e5ab20ed7a7677a998a163ccf7853764b195e6 (patch)
tree680dda4a829f2e252d7c5fb4bc87fa8b4a3231a2 /compiler/rustc_codegen_llvm/src
parent02913c078849f940371eb9930754f2b0f1bc9fad (diff)
parent2a2621deef74e6e9687f96ea502c7f82b1ffb432 (diff)
downloadrust-b8e5ab20ed7a7677a998a163ccf7853764b195e6.tar.gz
rust-b8e5ab20ed7a7677a998a163ccf7853764b195e6.zip
Auto merge of #89580 - estebank:trait-bounds-are-tricky, r=nagisa
Point at source of trait bound obligations in more places

Be more thorough in using `ItemObligation` and `BindingObligation` when
evaluating obligations so that we can point at trait bounds that
introduced unfulfilled obligations. We no longer incorrectly point at
unrelated trait bounds (`substs-ppaux.verbose.stderr`).

In particular, we now point at trait bounds on method calls.

We no longer point at "obvious" obligation sources (we no longer have a
note pointing at `Trait` saying "required by a bound in `Trait`", like
in `associated-types-no-suitable-supertrait*`).

We no longer point at associated items (`ImplObligation`), as they didn't
add any user actionable information, they just added noise.

Address part of #89418.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
0 files changed, 0 insertions, 0 deletions