Skip to main content

build_removed_clause_placeholder

Function build_removed_clause_placeholder 

Source
fn build_removed_clause_placeholder(
    translated: &TranslatedCrate,
    trait_decl_ref: &PolyTraitDeclRef,
) -> TraitRefKind
Expand description

Build a BuiltinOrAuto { builtin_data: RemovedAdtClause, .. } kind whose parent_trait_refs recursively mirror the trait’s implied clauses (each parent itself a RemovedAdtClause placeholder).

Substitution into the parents’ trait_decl_refs uses a stub placeholder kind for Self rather than the original (dangling) Clause(var): otherwise we’d embed dangling clause refs inside the synthesized parents, and the visitor never re-enters them.