diff options
| author | herbelin | 2008-03-10 23:17:57 +0000 |
|---|---|---|
| committer | herbelin | 2008-03-10 23:17:57 +0000 |
| commit | 77091f657e7393fc9d83a414542d2e2e2dd1e735 (patch) | |
| tree | a5fa8defd64e58a4370a6f6e847b4245ed5f632d /pretyping/reductionops.ml | |
| parent | 6b01f89b083bf8acc666264222131d6ce2bb06bf (diff) | |
Pas très propre de reposer sur la capture des anomalies (et cela
complique le débogage...). Réécriture de 2 morceaux de code qui
utilisaient les anomalies à des fins détournées de leur intention.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10653 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/reductionops.ml')
| -rw-r--r-- | pretyping/reductionops.ml | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/pretyping/reductionops.ml b/pretyping/reductionops.ml index 617bd77174..c7af265ce8 100644 --- a/pretyping/reductionops.ml +++ b/pretyping/reductionops.ml @@ -929,8 +929,9 @@ let meta_value evd mv = let meta_reducible_instance evd b = let fm = Metaset.elements b.freemetas in let metas = List.fold_left (fun l mv -> - try let g,(_,s) = meta_fvalue evd mv in (mv,(g.rebus,s))::l - with Anomaly _ | Not_found -> l) [] fm in + match (try meta_opt_fvalue evd mv with Not_found -> None) with + | Some (g,(_,s)) -> (mv,(g.rebus,s))::l + | None -> l) [] in let rec irec u = let u = whd_betaiota u in match kind_of_term u with |
