diff options
| author | ppedrot | 2013-09-18 18:29:40 +0000 |
|---|---|---|
| committer | ppedrot | 2013-09-18 18:29:40 +0000 |
| commit | 33eea163c72c70eaa3bf76506c1d07a8cde911fd (patch) | |
| tree | 69eb4394fc0eb748fa16609e86dbf941234157d8 /dev | |
| parent | 71a9b7f264721b8afe5081bb0e13bcf8759d8403 (diff) | |
At least made the evar type opaque! There are still 5 remaining unsafe
casts of ints to evars.
- 2 in Evarutil and Goal which are really needed, even though the Goal
one could (and should) be removed;
- 2 in G_xml and Detyping that are there for completeness sake, but
that might be made anomalies altogether;
- 1 in Newring which is quite dubious at best, and should be fixed.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16786 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'dev')
| -rw-r--r-- | dev/include | 2 | ||||
| -rw-r--r-- | dev/printers.mllib | 1 | ||||
| -rw-r--r-- | dev/top_printers.ml | 7 |
3 files changed, 6 insertions, 4 deletions
diff --git a/dev/include b/dev/include index 15725ae8b6..f785573ceb 100644 --- a/dev/include +++ b/dev/include @@ -45,7 +45,7 @@ #install_printer (* Goal.goal *) ppgoalgoal;; #install_printer (* metaset.t *) ppmetas;; #install_printer (* evar_map *) ppevm;; -#install_printer (* ExistentialSet.t *) ppexistentialset;; +#install_printer (* Evar.Set.t *) ppexistentialset;; #install_printer (* clenv *) ppclenv;; #install_printer (* env *) ppenv;; diff --git a/dev/printers.mllib b/dev/printers.mllib index 8e99b5247a..1eb3aa4bb5 100644 --- a/dev/printers.mllib +++ b/dev/printers.mllib @@ -45,6 +45,7 @@ Names Univ Esubst Sorts +Evar Constr Context Vars diff --git a/dev/top_printers.ml b/dev/top_printers.ml index 89e2d7ddde..6bb352c5eb 100644 --- a/dev/top_printers.ml +++ b/dev/top_printers.ml @@ -106,11 +106,12 @@ let pp_cpred s = pp (pr_cpred s) let pp_transparent_state s = pp (pr_transparent_state s) (* proof printers *) +let pr_evar ev = Pp.int (Evar.repr ev) let ppmetas metas = pp(pr_metaset metas) let ppevm evd = pp(pr_evar_map (Some 2) evd) let ppevmall evd = pp(pr_evar_map None evd) let pr_existentialset evars = - prlist_with_sep spc pr_meta (ExistentialSet.elements evars) + prlist_with_sep spc pr_evar (Evar.Set.elements evars) let ppexistentialset evars = pp (pr_existentialset evars) let ppclenv clenv = pp(pr_clenv clenv) @@ -172,7 +173,7 @@ let constr_display csr = "LetIn("^(name_display na)^","^(term_display b)^"," ^(term_display t)^","^(term_display c)^")" | App (c,l) -> "App("^(term_display c)^","^(array_display l)^")\n" - | Evar (e,l) -> "Evar("^(string_of_int e)^","^(array_display l)^")" + | Evar (e,l) -> "Evar("^(string_of_existential e)^","^(array_display l)^")" | Const c -> "Const("^(string_of_con c)^")" | Ind (sp,i) -> "MutInd("^(string_of_mind sp)^","^(string_of_int i)^")" @@ -250,7 +251,7 @@ let print_pure_constr csr = box_display c; Array.iter (fun x -> print_space (); box_display x) l; print_string ")" - | Evar (e,l) -> print_string "Evar#"; print_int e; print_string "{"; + | Evar (e,l) -> print_string "Evar#"; print_int (Evar.repr e); print_string "{"; Array.iter (fun x -> print_space (); box_display x) l; print_string"}" | Const c -> print_string "Cons("; |
