diff options
| author | aspiwack | 2009-02-19 19:13:50 +0000 |
|---|---|---|
| committer | aspiwack | 2009-02-19 19:13:50 +0000 |
| commit | e653b53692e2cc0bb4f84881b32d3242ea39be86 (patch) | |
| tree | 728e2a206876bf932c033a781e0552620f7f89d0 /contrib/xml | |
| parent | a6abd9f72319cacb17e825b1f09255974c2e59f0 (diff) | |
On remplace evar_map par evar_defs (seul evar_defs est désormais exporté
par Evd). Ça s'accompagne de quelques autres modifications de
l'interface (certaines fonctions étaient des doublons, ou des
conversions entre evar_map et evar_defs).
J'ai modifié un peu la structure de evd.ml aussi, pour éviter des
fonctions redéfinies deux fois (i.e. définies trois fois !), j'ai
introduit des sous-modules pour les différentes couches.
Il y a à l'heure actuelle une pénalité en performance assez sévère (due
principalement à la nouvelle mouture de Evd.merge, si mon diagnostique
est correct). Mais fera l'objet de plusieurs optimisations dans les
commits à venir.
Un peu plus ennuyeux, la test-suite du mode déclaratif ne passe plus. Un
appel de Decl_proof_instr.mark_as_done visiblement, je suis pour
l'instant incapable de comprendre ce qui cause cette erreur. J'espère
qu'on pourra le déterminer rapidement.
Ce commit est le tout premier commit dans le trunk en rapport avec les
évolution futures de la machine de preuve, en vue en particulier
d'obtenir un "vrai refine".
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@11939 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'contrib/xml')
| -rw-r--r-- | contrib/xml/proof2aproof.ml | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/contrib/xml/proof2aproof.ml b/contrib/xml/proof2aproof.ml index 30dc7b710e..f7524671fd 100644 --- a/contrib/xml/proof2aproof.ml +++ b/contrib/xml/proof2aproof.ml @@ -149,7 +149,7 @@ let extract_open_proof sigma pf = in let unsharedconstr = let evar_nf_constr = - nf_evar (Evd.evars_of !evd) + nf_evar ( !evd) ~preserve:(function e -> S.mem e !unshared_constrs) constr in Unshare.unshare @@ -159,14 +159,14 @@ let extract_open_proof sigma pf = (*CSC: debugging stuff to be removed *) if ProofTreeHash.mem proof_tree_to_constr node then Pp.ppnl (Pp.(++) (Pp.str "#DUPLICATE INSERTION: ") - (Tactic_printer.print_proof (Evd.evars_of !evd) [] node)) ; + (Tactic_printer.print_proof ( !evd) [] node)) ; ProofTreeHash.add proof_tree_to_constr node unsharedconstr ; unshared_constrs := S.add unsharedconstr !unshared_constrs ; unsharedconstr in let unshared_pf = unshare_proof_tree pf in let pfterm = proof_extractor [] unshared_pf in - (pfterm, Evd.evars_of !evd, proof_tree_to_constr, proof_tree_to_flattened_proof_tree, + (pfterm, !evd, proof_tree_to_constr, proof_tree_to_flattened_proof_tree, unshared_pf) ;; |
