aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Boutillier2014-09-18 14:06:29 +0200
committerPierre Boutillier2014-09-18 15:12:00 +0200
commit854be50a06b1c0fd95a63402eeced0fd0388bf55 (patch)
tree4cf56f1f6374087e27f2481ec61786d304214508
parent82229da083c2cfecca63f4ff5ca7da41bda059f6 (diff)
Reductionops: (Co)Fixpoints are always refolded during iota
-rw-r--r--pretyping/reductionops.ml8
-rw-r--r--test-suite/Makefile2
-rw-r--r--test-suite/output/inference.out6
3 files changed, 6 insertions, 10 deletions
diff --git a/pretyping/reductionops.ml b/pretyping/reductionops.ml
index 10f2bfd5bf..4c9fc4dc53 100644
--- a/pretyping/reductionops.ml
+++ b/pretyping/reductionops.ml
@@ -911,9 +911,7 @@ let rec whd_state_gen ?csts tactic_mode flags env sigma =
|args, (Stack.Fix (f,s',cst_l)::s'') ->
let x' = Stack.zip(x,args) in
let out_sk = s' @ (Stack.append_app [|x'|] s'') in
- if tactic_mode
- then reduce_and_refold_fix whrec env cst_l f out_sk
- else whrec Cst_stack.empty (contract_fix f, out_sk)
+ reduce_and_refold_fix whrec env cst_l f out_sk
|args, (Stack.Cst (const,curr,remains,s',cst_l) :: s'') ->
let x' = Stack.zip(x,args) in
begin match remains with
@@ -949,9 +947,7 @@ let rec whd_state_gen ?csts tactic_mode flags env sigma =
if Closure.RedFlags.red_set flags Closure.RedFlags.fIOTA then
match Stack.strip_app stack with
|args, (Stack.Case(ci, _, lf,_)::s') ->
- if tactic_mode
- then reduce_and_refold_cofix whrec env cst_l cofix stack
- else whrec Cst_stack.empty (contract_cofix cofix, stack)
+ reduce_and_refold_cofix whrec env cst_l cofix stack
|_ -> fold ()
else fold ()
diff --git a/test-suite/Makefile b/test-suite/Makefile
index 74e8061387..5188fe6c51 100644
--- a/test-suite/Makefile
+++ b/test-suite/Makefile
@@ -42,7 +42,7 @@ HIDE := $(if $(VERBOSE),,@)
REDIR := $(if $(VERBOSE),,> /dev/null 2>&1)
# read out an emacs config and look for coq-prog-args; if such exists, return it
-get_coq_prog_args_helper = sed -n s'/^.*coq-prog-args:\s*(\([^)]*\)).*/\1/p' $(1)
+get_coq_prog_args_helper = sed -n s'/^.*coq-prog-args:[[:space:]]*(\([^)]*\)).*/\1/p' $(1)
get_coq_prog_args = $(strip $(filter-out "-emacs-U" "-emacs",$(shell $(call get_coq_prog_args_helper,$(1)))))
SINGLE_QUOTE="
#" # double up on the quotes, in a comment, to appease the emacs syntax highlighter
diff --git a/test-suite/output/inference.out b/test-suite/output/inference.out
index 466faaccb3..6701259760 100644
--- a/test-suite/output/inference.out
+++ b/test-suite/output/inference.out
@@ -5,10 +5,10 @@ fun e : option L => match e with
end
: option L -> option L
-P is monomorphic
+P is not universe polymorphic
fun (m n p : nat) (H : S m <= S n + p) => le_S_n m (n + p) H
: forall m n p : nat, S m <= S n + p -> m <= n + p
-fun n : nat => let x := A n in ?12 ?15:T n
+fun n : nat => let x := A n in ?y ?y0:T n
: forall n : nat, T n
-fun n : nat => ?20 ?23:T n
+fun n : nat => ?y ?y0:T n
: forall n : nat, T n