fix: ComputedFields.lean

`all` fields was not being set correctly.
TODO: check `all` fields in the kernel.
This commit is contained in:
Leonardo de Moura 2022-09-07 20:35:59 -07:00
parent ea3235c551
commit bd21583d4b

View file

@ -108,10 +108,12 @@ def overrideCasesOn : M Unit := do
forallTelescope (← inferType minor) fun args _ => do
mkLambdaFVars ((if ← isScalarField ctor then #[] else compFieldVars) ++ args)
(← mkUnsafeCastTo constMotive (mkAppN minor args)))
let nameOverride := mkCasesOnName name ++ `_override
addDecl <| .defnDecl { casesOn with
name := mkCasesOnName name ++ `_override
name := nameOverride
all := [nameOverride]
value
hints := .opaque
hints := .opaque
safety := .unsafe
}
setInlineAttribute (mkCasesOnName name ++ `_override)