diff options
author | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-18 11:26:08 +0200 |
---|---|---|
committer | Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr> | 2017-07-26 15:23:18 +0200 |
commit | 7edf54baf92f219e4a5307c4cb2563b0e7bda070 (patch) | |
tree | c8864d54b9558387e8b6bb2e6b12440f63d1ff8e | |
parent | a960c4db9ae93a6445f9db620f96f62b397ba8b5 (diff) |
Removing default evar-normalization for ARGUMENT EXTEND.
This fixes bug 5650: evar (x : Prop) should not be slow.
-rw-r--r-- | grammar/argextend.mlp | 3 | ||||
-rw-r--r-- | plugins/ltac/tacinterp.ml | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/grammar/argextend.mlp b/grammar/argextend.mlp index 643b6277a..12b7b171b 100644 --- a/grammar/argextend.mlp +++ b/grammar/argextend.mlp @@ -137,7 +137,8 @@ let declare_tactic_argument loc s (typ, f, g, h) cl = let typ = match globtyp with None -> ExtraArgType s | Some typ -> typ in <:expr< let f = $lid:f$ in - fun ist v -> Ftactic.nf_enter (fun gl -> + fun ist v -> Ftactic.enter (fun gl -> + let gl = Proofview.Goal.assume gl in let (sigma, v) = Tacmach.New.of_old (fun gl -> f ist gl v) gl in let v = Geninterp.Val.inject (Geninterp.val_tag $make_topwit loc typ$) v in Proofview.tclTHEN (Proofview.Unsafe.tclEVARS sigma) (Ftactic.return v) diff --git a/plugins/ltac/tacinterp.ml b/plugins/ltac/tacinterp.ml index 60a8f75ec..d3e625e73 100644 --- a/plugins/ltac/tacinterp.ml +++ b/plugins/ltac/tacinterp.ml @@ -2000,7 +2000,7 @@ let lift f = (); fun ist x -> Ftactic.enter begin fun gl -> Ftactic.return (f ist env sigma x) end -let lifts f = (); fun ist x -> Ftactic.nf_enter begin fun gl -> +let lifts f = (); fun ist x -> Ftactic.enter begin fun gl -> let env = Proofview.Goal.env gl in let sigma = Proofview.Goal.sigma gl in let (sigma, v) = f ist env sigma x in |