aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pretyping/pretyping.ml1
-rw-r--r--test-suite/success/Case19.v8
2 files changed, 9 insertions, 0 deletions
diff --git a/pretyping/pretyping.ml b/pretyping/pretyping.ml
index be24d22b59..8b41b9c9b5 100644
--- a/pretyping/pretyping.ml
+++ b/pretyping/pretyping.ml
@@ -482,6 +482,7 @@ module Pretyping_F (Coercion : Coercion.S) = struct
else
error_cant_find_case_type_loc loc env (evars_of !isevars)
cj.uj_val in
+ let ccl = refresh_universes ccl in
let p = it_mkLambda_or_LetIn (lift (nar+1) ccl) psign in
let v =
let mis,_ = dest_ind_family indf in
diff --git a/test-suite/success/Case19.v b/test-suite/success/Case19.v
new file mode 100644
index 0000000000..9a6ed71a54
--- /dev/null
+++ b/test-suite/success/Case19.v
@@ -0,0 +1,8 @@
+(* This used to fail in Coq version 8.1 beta due to a non variable
+ universe (issued by the inductive sort-polymorphism) being sent by
+ pretyping to the kernel (bug #1182) *)
+
+Variable T : Type.
+Variable x : nat*nat.
+
+Check let (_, _) := x in sigT (fun _ : T => nat).