diff options
author | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2016-07-25 16:39:34 +0200 |
---|---|---|
committer | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2016-07-25 16:40:58 +0200 |
commit | ba00867d515624aee734d998bfbe3880f559d907 (patch) | |
tree | a63e6cd8e7e65244eb1ed1a724967874914e17b1 /checker/inductive.ml | |
parent | e10c9eed42e9cfc843a6cb2d48fa175c1be98741 (diff) |
Fix bug #4876: critical bug in guard condition checker.
Diffstat (limited to 'checker/inductive.ml')
-rw-r--r-- | checker/inductive.ml | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/checker/inductive.ml b/checker/inductive.ml index 909ecccae..5825d1ab8 100644 --- a/checker/inductive.ml +++ b/checker/inductive.ml @@ -988,6 +988,10 @@ let check_one_fix renv recpos trees def = | (Ind _ | Construct _) -> List.iter (check_rec_call renv []) l + | Proj (p, c) -> + List.iter (check_rec_call renv []) l; + check_rec_call renv [] c + | Var _ -> anomaly (Pp.str "Section variable in Coqchk !") | Sort _ -> assert (l = []) @@ -997,8 +1001,6 @@ let check_one_fix renv recpos trees def = | (App _ | LetIn _ | Cast _) -> assert false (* beta zeta reduction *) - | Proj (p, c) -> check_rec_call renv [] c - and check_nested_fix_body renv decr recArgsDecrArg body = if decr = 0 then check_rec_call (assign_var_spec renv (1,recArgsDecrArg)) [] body |