summaryrefslogtreecommitdiff
path: root/test-suite/success/eta.v
diff options
context:
space:
mode:
authorGravatar Stephane Glondu <steph@glondu.net>2013-05-08 18:01:07 +0200
committerGravatar Stephane Glondu <steph@glondu.net>2013-05-08 18:01:07 +0200
commit095eac936751bab72e3c6bbdfa3ede51f7198721 (patch)
tree44cf2859ba6b8486f056efaaf7ee6c2d855f2aae /test-suite/success/eta.v
parent4e6d6dab2ef2de6c1ad7972fc981e55a4fde7ae3 (diff)
parent0b14713e3efd7f8f1cc8a06555d0ec8fbe496130 (diff)
Merge branch 'experimental/master'
Diffstat (limited to 'test-suite/success/eta.v')
-rw-r--r--test-suite/success/eta.v19
1 files changed, 19 insertions, 0 deletions
diff --git a/test-suite/success/eta.v b/test-suite/success/eta.v
new file mode 100644
index 00000000..08078012
--- /dev/null
+++ b/test-suite/success/eta.v
@@ -0,0 +1,19 @@
+(* Kernel test (head term is a constant) *)
+Check (fun a : S = S => a : S = fun x => S x).
+
+(* Kernel test (head term is a variable) *)
+Check (fun (f:nat->nat) (a : f = f) => a : f = fun x => f x).
+
+(* Test type inference (head term is syntactically rigid) *)
+Check (fun (a : list = list) => a : list = fun A => _ A).
+
+(* Test type inference (head term is a variable) *)
+(* This one is still to be done...
+Check (fun (f:nat->nat) (a : f = f) => a : f = fun x => _ x).
+*)
+
+(* Test tactic unification *)
+Goal (forall f:nat->nat, (fun x => f x) = (fun x => f x)) -> S = S.
+intro H; apply H.
+Qed.
+