aboutsummaryrefslogtreecommitdiff
path: root/printing/printer.ml
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2014-04-23 21:38:37 +0200
committerPierre-Marie Pédrot2014-04-23 22:58:51 +0200
commit5bddbf141cc6462563cdc86dcc7c02edccd295fd (patch)
tree9ebc3de6396f376064b67c5da0202b1e33ed22af /printing/printer.ml
parent74ddca99c649f2f8c203582a9b82bddf64fb6b52 (diff)
Better representation of evar filters: we represent the vacuous filters of
any length with a [None] representation and ensure that this representation is canonical through the restricted interface.
Diffstat (limited to 'printing/printer.ml')
-rw-r--r--printing/printer.ml6
1 files changed, 4 insertions, 2 deletions
diff --git a/printing/printer.ml b/printing/printer.ml
index 4bab893d73..935153bff6 100644
--- a/printing/printer.ml
+++ b/printing/printer.ml
@@ -356,8 +356,10 @@ let pr_concl n sigma g =
(* display evar type: a context and a type *)
let pr_evgl_sign gl =
let ps = pr_named_context_of (evar_env gl) in
- let f = Filter.repr (evar_filter gl) in
- let _, l = List.filter2 (fun b c -> not b) f (evar_context gl) in
+ let _, l = match Filter.repr (evar_filter gl) with
+ | None -> [], []
+ | Some f -> List.filter2 (fun b c -> not b) f (evar_context gl)
+ in
let ids = List.rev_map pi1 l in
let warn =
if List.is_empty ids then mt () else