diff options
| author | Pierre-Marie Pédrot | 2019-07-19 16:50:41 +0200 |
|---|---|---|
| committer | Pierre-Marie Pédrot | 2019-07-19 16:50:41 +0200 |
| commit | c80dfb6bd8ff8625ced2cae8b6789707f904a118 (patch) | |
| tree | 106480405b769cc1e2513549113394cdfef3e200 | |
| parent | fc2cb2c7d483302b908abf821d63e82f28a57570 (diff) | |
| parent | bc04d3196a62a52caca96014448b7b966baedd0c (diff) | |
Merge PR #10521: Move unfold_side_flags CClosure -> Tacred internals
Reviewed-by: ppedrot
| -rw-r--r-- | kernel/cClosure.ml | 9 | ||||
| -rw-r--r-- | kernel/cClosure.mli | 4 | ||||
| -rw-r--r-- | pretyping/tacred.ml | 9 |
3 files changed, 9 insertions, 13 deletions
diff --git a/kernel/cClosure.ml b/kernel/cClosure.ml index 6be8a59aeb..1cc3dc3975 100644 --- a/kernel/cClosure.ml +++ b/kernel/cClosure.ml @@ -211,15 +211,6 @@ let delta = mkflags [fDELTA] let zeta = mkflags [fZETA] let nored = no_red -(* Removing fZETA for finer behaviour would break many developments *) -let unfold_side_flags = [fBETA;fMATCH;fFIX;fCOFIX;fZETA] -let unfold_side_red = mkflags [fBETA;fMATCH;fFIX;fCOFIX;fZETA] -let unfold_red kn = - let flag = match kn with - | EvalVarRef id -> fVAR id - | EvalConstRef kn -> fCONST kn in - mkflags (flag::unfold_side_flags) - (* Flags of reduction and cache of constants: 'a is a type that may be * mapped to constr. 'a infos implements a cache for constants and * abstractions, storing a representation (of type 'a) of the body of diff --git a/kernel/cClosure.mli b/kernel/cClosure.mli index 027d5245c9..cd1de4c834 100644 --- a/kernel/cClosure.mli +++ b/kernel/cClosure.mli @@ -84,10 +84,6 @@ val delta : reds val zeta : reds val nored : reds - -val unfold_side_red : reds -val unfold_red : evaluable_global_reference -> reds - (***********************************************************************) type table_key = Constant.t Univ.puniverses tableKey diff --git a/pretyping/tacred.ml b/pretyping/tacred.ml index 6fdceb929a..866c0da555 100644 --- a/pretyping/tacred.ml +++ b/pretyping/tacred.ml @@ -1103,6 +1103,15 @@ let string_of_evaluable_ref env = function string_of_qualid (Nametab.shortest_qualid_of_global (vars_of_env env) (GlobRef.ConstRef kn)) +(* Removing fZETA for finer behaviour would break many developments *) +let unfold_side_flags = RedFlags.[fBETA;fMATCH;fFIX;fCOFIX;fZETA] +let unfold_side_red = RedFlags.(mkflags [fBETA;fMATCH;fFIX;fCOFIX;fZETA]) +let unfold_red kn = + let flag = match kn with + | EvalVarRef id -> RedFlags.fVAR id + | EvalConstRef kn -> RedFlags.fCONST kn in + RedFlags.mkflags (flag::unfold_side_flags) + let unfold env sigma name c = if is_evaluable env name then clos_norm_flags (unfold_red name) env sigma c |
