diff options
author | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-11 21:51:23 +0200 |
---|---|---|
committer | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-13 15:14:45 +0200 |
commit | 9938aed874d3e15e5d21689ea841bdc3e6ebb40e (patch) | |
tree | f3c08864d8e26e29350d541904412cc07da79abf /vernac/assumptions.ml | |
parent | 001c95411b6674423886a085d8f624ea031a9ebc (diff) |
Safer API for Global.body_of_constant and variants.
We aditionally return the abstract universe context inside the option. This
is relatively painless as most uses were using the option as a boolean.
Diffstat (limited to 'vernac/assumptions.ml')
-rw-r--r-- | vernac/assumptions.ml | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/vernac/assumptions.ml b/vernac/assumptions.ml index db07bbd06..86bbf46a3 100644 --- a/vernac/assumptions.ml +++ b/vernac/assumptions.ml @@ -187,7 +187,7 @@ let rec traverse current ctx accu t = match kind_of_term t with let body () = id |> Global.lookup_named |> NamedDecl.get_value in traverse_object accu body (VarRef id) | Const (kn, _) -> - let body () = Global.body_of_constant_body (lookup_constant kn) in + let body () = Option.map fst (Global.body_of_constant_body (lookup_constant kn)) in traverse_object accu body (ConstRef kn) | Ind ((mind, _) as ind, _) -> traverse_inductive accu mind (IndRef ind) @@ -200,7 +200,7 @@ let rec traverse current ctx accu t = match kind_of_term t with | Lambda(_,_,oty), Const (kn, _) when Vars.noccurn 1 oty && not (Declareops.constant_has_body (lookup_constant kn)) -> - let body () = Global.body_of_constant_body (lookup_constant kn) in + let body () = Option.map fst (Global.body_of_constant_body (lookup_constant kn)) in traverse_object ~inhabits:(current,ctx,Vars.subst1 mkProp oty) accu body (ConstRef kn) | _ -> |