diff options
| author | Emilio Jesus Gallego Arias | 2019-08-22 00:58:51 +0200 |
|---|---|---|
| committer | Emilio Jesus Gallego Arias | 2019-10-29 16:59:09 +0100 |
| commit | 6817b634825638e6ff6c0b41dbc61f8410c55f43 (patch) | |
| tree | 6c56d2df27a9310f89737e7d6a82d55160e3ab5e | |
| parent | f0c393b57e89d01fd409008d3b88ea3a2ed87236 (diff) | |
[declare] Use helper function for `fix_exn` instead of relying on internals.
| -rw-r--r-- | dev/ci/user-overlays/10681-ejgallego-proof+private_entry.sh | 6 | ||||
| -rw-r--r-- | tactics/declare.ml | 2 | ||||
| -rw-r--r-- | tactics/declare.mli | 4 | ||||
| -rw-r--r-- | vernac/declareDef.ml | 2 | ||||
| -rw-r--r-- | vernac/lemmas.ml | 2 |
5 files changed, 14 insertions, 2 deletions
diff --git a/dev/ci/user-overlays/10681-ejgallego-proof+private_entry.sh b/dev/ci/user-overlays/10681-ejgallego-proof+private_entry.sh new file mode 100644 index 0000000000..f4840c2a83 --- /dev/null +++ b/dev/ci/user-overlays/10681-ejgallego-proof+private_entry.sh @@ -0,0 +1,6 @@ +if [ "$CI_PULL_REQUEST" = "10681" ] || [ "$CI_BRANCH" = "proof+private_entry" ]; then + + equations_CI_REF=proof+private_entry + equations_CI_GITURL=https://github.com/ejgallego/Coq-Equations + +fi diff --git a/tactics/declare.ml b/tactics/declare.ml index eb17cf67d1..4ef0fb9459 100644 --- a/tactics/declare.ml +++ b/tactics/declare.ml @@ -446,6 +446,8 @@ module Internal = struct let set_opacity ~opaque entry = { entry with proof_entry_opaque = opaque } + let get_fix_exn entry = Future.fix_exn_of entry.proof_entry_body + let rec decompose len c t accu = let open Constr in let open Context.Rel.Declaration in diff --git a/tactics/declare.mli b/tactics/declare.mli index 0cdf317fe4..c9cad823a4 100644 --- a/tactics/declare.mli +++ b/tactics/declare.mli @@ -135,6 +135,10 @@ module Internal : sig (* Overriding opacity is indeed really hacky *) val set_opacity : opaque:bool -> 'a proof_entry -> 'a proof_entry + (* TODO: This is only used in DeclareDef to forward the fix to + hooks, should eventually go away *) + val get_fix_exn : 'a proof_entry -> Future.fix_exn + val shrink_entry : EConstr.named_context -> 'a proof_entry -> 'a proof_entry * Constr.constr list end diff --git a/vernac/declareDef.ml b/vernac/declareDef.ml index f044c025d8..e57c324c9a 100644 --- a/vernac/declareDef.ml +++ b/vernac/declareDef.ml @@ -44,7 +44,7 @@ end (* Locality stuff *) let declare_definition ~name ~scope ~kind ?hook_data udecl ce imps = - let fix_exn = Future.fix_exn_of ce.proof_entry_body in + let fix_exn = Declare.Internal.get_fix_exn ce in let gr = match scope with | Discharge -> let () = diff --git a/vernac/lemmas.ml b/vernac/lemmas.ml index 93c3f900bb..7010aa8c6d 100644 --- a/vernac/lemmas.ml +++ b/vernac/lemmas.ml @@ -401,7 +401,7 @@ let finish_proved env sigma idopt po info = let name = match idopt with | None -> name | Some { CAst.v = save_id } -> check_anonymity name save_id; save_id in - let fix_exn = Future.fix_exn_of const.Declare.proof_entry_body in + let fix_exn = Declare.Internal.get_fix_exn const in let () = try let const = adjust_guardness_conditions const compute_guard in let should_suggest = const.Declare.proof_entry_opaque && |
