diff options
| author | Pierre-Marie Pédrot | 2019-06-16 19:09:25 +0200 |
|---|---|---|
| committer | Pierre-Marie Pédrot | 2019-06-24 11:02:11 +0200 |
| commit | f597952e1b216ca5adf9f782c736f4cfe705ef02 (patch) | |
| tree | 33288ea479f68ab8cb980ed7c7b94a0615c9ccff /vernac/record.ml | |
| parent | 2720db38d74e3e8d26077ad03d79221f0734465c (diff) | |
Duplicate the type of constant entries in Proof_global.
This allows to desynchronize the kernel-facing API from the proof-facing one.
Diffstat (limited to 'vernac/record.ml')
| -rw-r--r-- | vernac/record.ml | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/vernac/record.ml b/vernac/record.ml index 7cc8d9e9b9..9e3353bc54 100644 --- a/vernac/record.ml +++ b/vernac/record.ml @@ -342,16 +342,17 @@ let declare_projections indsp ctx ?(kind=StructureComponent) binder_name flags f let projtyp = it_mkProd_or_LetIn (mkProd (x,rp,ccl)) paramdecls in try + let open Proof_global in let entry = { - const_entry_body = + proof_entry_body = Future.from_val ((proj, Univ.ContextSet.empty), Evd.empty_side_effects); - const_entry_secctx = None; - const_entry_type = Some projtyp; - const_entry_universes = ctx; - const_entry_opaque = false; - const_entry_inline_code = false; - const_entry_feedback = None } in - let k = (DefinitionEntry entry,IsDefinition kind) in + proof_entry_secctx = None; + proof_entry_type = Some projtyp; + proof_entry_universes = ctx; + proof_entry_opaque = false; + proof_entry_inline_code = false; + proof_entry_feedback = None } in + let k = (Declare.DefinitionEntry entry,IsDefinition kind) in let kn = declare_constant ~internal:InternalTacticRequest fid k in let constr_fip = let proj_args = (*Rel 1 refers to "x"*) paramargs@[mkRel 1] in |
