Skip to content
  • Apoorv Ingle's avatar
    c6432eac
    Constraint simplification loop now depends on `ExpansionFuel` · c6432eac
    Apoorv Ingle authored and sheaf's avatar sheaf committed
    instead of a boolean flag for `CDictCan.cc_pend_sc`.
    Pending givens get a fuel of 3 while Wanted and quantified constraints get a fuel of 1.
    This helps pending given constraints to keep up with pending wanted constraints in case of
    `UndecidableSuperClasses` and superclass expansions while simplifying the infered type.
    
    Adds 3 dynamic flags for controlling the fuels for each type of constraints
    `-fgivens-expansion-fuel` for givens `-fwanteds-expansion-fuel` for wanteds and `-fqcs-expansion-fuel` for quantified constraints
    
    Fixes #21909
    Added Tests T21909, T21909b
    Added Note [Expanding Recursive Superclasses and ExpansionFuel]
    c6432eac
    Constraint simplification loop now depends on `ExpansionFuel`
    Apoorv Ingle authored and sheaf's avatar sheaf committed
    instead of a boolean flag for `CDictCan.cc_pend_sc`.
    Pending givens get a fuel of 3 while Wanted and quantified constraints get a fuel of 1.
    This helps pending given constraints to keep up with pending wanted constraints in case of
    `UndecidableSuperClasses` and superclass expansions while simplifying the infered type.
    
    Adds 3 dynamic flags for controlling the fuels for each type of constraints
    `-fgivens-expansion-fuel` for givens `-fwanteds-expansion-fuel` for wanteds and `-fqcs-expansion-fuel` for quantified constraints
    
    Fixes #21909
    Added Tests T21909, T21909b
    Added Note [Expanding Recursive Superclasses and ExpansionFuel]
Loading