1
Fork 0

Rollup merge of #108295 - compiler-errors:wtf-is-this, r=cjgillot

Use DefKind to give more item kind information during BindingObligation note

The current label says "required by a bound in this". When I see that label, my immediate impression is "this... **what**?". It feels like it was cut short.

Alternative to this would be saying "in this item", but adding the item kind is strictly more informational and adds very little overhead to the existing error presentation.
This commit is contained in:
Matthias Krüger 2023-02-21 23:02:00 +01:00 committed by GitHub
commit ae01430078
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
68 changed files with 193 additions and 187 deletions

View file

@ -2784,7 +2784,13 @@ impl<'tcx> TypeErrCtxtExt<'tcx> for TypeErrCtxt<'_, 'tcx> {
_ => true,
};
if ident.span.is_visible(sm) && !ident.span.overlaps(span) && !same_line {
multispan.push_span_label(ident.span, "required by a bound in this");
multispan.push_span_label(
ident.span,
format!(
"required by a bound in this {}",
tcx.def_kind(item_def_id).descr(item_def_id)
),
);
}
}
let descr = format!("required by a bound in `{item_name}`");