aboutsummaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'kernel')
-rw-r--r--kernel/declareops.ml2
-rw-r--r--kernel/term_typing.ml4
2 files changed, 5 insertions, 1 deletions
diff --git a/kernel/declareops.ml b/kernel/declareops.ml
index dd906bab24..149eeba287 100644
--- a/kernel/declareops.ml
+++ b/kernel/declareops.ml
@@ -284,7 +284,7 @@ type side_effects = side_effect list
let no_seff = ([] : side_effects)
let iter_side_effects f l = List.iter f (List.rev l)
let fold_side_effects f a l = List.fold_left f a l
-let uniquize_side_effects l = l (** FIXME: there is something dubious here *)
+let uniquize_side_effects l = CList.uniquize l
let union_side_effects l1 l2 = l1 @ l2
let flatten_side_effects l = List.flatten l
let side_effects_of_list l = l
diff --git a/kernel/term_typing.ml b/kernel/term_typing.ml
index 8c4ec8cbfc..770c720d89 100644
--- a/kernel/term_typing.ml
+++ b/kernel/term_typing.ml
@@ -64,6 +64,10 @@ let handle_side_effects env body side_eff =
let cbl = match se with
| SEsubproof (c,cb) -> [c,cb]
| SEscheme (cl,_) -> List.map (fun (_,c,cb) -> c,cb) cl in
+ let not_exists (c,_) =
+ try ignore(Environ.lookup_constant c env); false
+ with Not_found -> true in
+ let cbl = List.filter not_exists cbl in
let cname c =
let name = string_of_con c in
for i = 0 to String.length name - 1 do