From 84cbc09bd1400f732a6c70e8a840e4c13d018478 Mon Sep 17 00:00:00 2001 From: Matthieu Sozeau Date: Thu, 17 Oct 2013 14:55:57 +0200 Subject: Correct rebase on STM code. Thanks to E. Tassi for help on dealing with latent universes. Now the universes in the type of a definition/lemma are eagerly added to the environment so that later proofs can be checked independently of the original (delegated) proof body. - Fixed firstorder, ring to work correctly with universe polymorphism. - Changed constr_of_global to raise an anomaly if side effects would be lost by turning a polymorphic constant into a constr. - Fix a non-termination issue in solve_evar_evar. - --- checker/mod_checking.ml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'checker') diff --git a/checker/mod_checking.ml b/checker/mod_checking.ml index 4f4cc5560b..7800dff01f 100644 --- a/checker/mod_checking.ml +++ b/checker/mod_checking.ml @@ -28,7 +28,7 @@ let check_constant_declaration env kn cb = (* let env = add_constraints cb.const_constraints env in*) (match cb.const_type with ty -> - let env' = add_constraints cb.const_constraints env in + let env' = add_constraints (Future.force cb.const_constraints) env in let _ = infer_type env' ty in (match body_of_constant cb with | Some bd -> @@ -69,13 +69,13 @@ let rec check_module env mp mb = {typ_mp=mp; typ_expr=sign; typ_expr_alg=None; - typ_constraints=Univ.empty_constraint; + typ_constraints=Univ.Constraint.empty; typ_delta = mb.mod_delta;} and mtb2 = {typ_mp=mp; typ_expr=mb.mod_type; typ_expr_alg=None; - typ_constraints=Univ.empty_constraint; + typ_constraints=Univ.Constraint.empty; typ_delta = mb.mod_delta;} in let env = add_module_type mp mtb1 env in -- cgit v1.2.3