aboutsummaryrefslogtreecommitdiff
path: root/test-suite/bugs/opened
diff options
context:
space:
mode:
authorMatthieu Sozeau2014-07-03 18:51:13 +0200
committerMatthieu Sozeau2014-07-03 18:53:17 +0200
commite7ba2a9be24823503495e959f0dffc131e99801b (patch)
treedb0a3979974c88e101804438cfb89c1ddc70742d /test-suite/bugs/opened
parentf2327aa3c69f1695f99e2ccbfe00c4e54e56e7d2 (diff)
Fix eta expansion of primitive records (HoTT bug #78), which now fails cleanly when called
on partially applied constructors. Also protect evar_conv from that case.
Diffstat (limited to 'test-suite/bugs/opened')
-rw-r--r--test-suite/bugs/opened/HoTT_coq_078.v45
1 files changed, 0 insertions, 45 deletions
diff --git a/test-suite/bugs/opened/HoTT_coq_078.v b/test-suite/bugs/opened/HoTT_coq_078.v
deleted file mode 100644
index a2c97d0675..0000000000
--- a/test-suite/bugs/opened/HoTT_coq_078.v
+++ /dev/null
@@ -1,45 +0,0 @@
-Set Implicit Arguments.
-Require Import Logic.
-
-(*Global Set Universe Polymorphism.*)
-Global Set Asymmetric Patterns.
-Local Set Primitive Projections.
-
-Local Open Scope type_scope.
-
-Record prod (A B : Type) : Type :=
- pair { fst : A; snd : B }.
-
-Arguments pair {A B} _ _.
-
-Notation "x * y" := (prod x y) : type_scope.
-Notation "( x , y , .. , z )" := (pair .. (pair x y) .. z) : core_scope.
-
-Generalizable Variables X A B f g n.
-
-Inductive paths {A : Type} (a : A) : A -> Type :=
- idpath : paths a a.
-
-Arguments idpath {A a} , [A] a.
-
-Notation "x = y :> A" := (@paths A x y) : type_scope.
-Notation "x = y" := (x = y :>_) : type_scope.
-
-Definition transport {A : Type} (P : A -> Type) {x y : A} (p : x = y) (u : P x) : P y :=
- match p with idpath => u end.
-
-Definition transport_prod' {A : Type} {P Q : A -> Type} {a a' : A} (p : a = a')
- (z : P a * Q a)
- : transport (fun a => P a * Q a) p z = (transport _ p (fst z), transport _ p (snd z))
- := match p as p' return transport (fun a0 => P a0 * Q a0) p' z = (transport P p' (fst z), transport Q p' (snd z)) with
- | idpath => idpath
- end. (* success *)
-
-Fail Definition transport_prod {A : Type} {P Q : A -> Type} {a a' : A} (p : a = a')
- (z : P a * Q a)
- : transport (fun a => P a * Q a) p z = (transport _ p (fst z), transport _ p (snd z))
- := match p with
- | idpath => idpath
- end.
-(** Toplevel input, characters 15-255:
-Error: Conversion test raised an anomaly *)