Make `Bounds.clauses` private Construct it through `Bounds::default()`, then consume the clauses via the method `Bounds::clauses()`. This helps with effects desugaring where `clauses()` is not only the clauses within the `clauses` field.
Ty::new_unit
def_span
Self
DefId
Bounds.clauses
TyCtxt::struct_span_lint_hir
TyCtxt::node_span_lint
TypeVisitor
DefIdVisitor
VisitorResult
check_mod_impl_wf
check_mod_type_wf
NonZero
StructuredDiagnostic
StructuredDiag