summaryrefslogtreecommitdiff
path: root/test-suite/success/CanonicalStructure.v
diff options
context:
space:
mode:
authorGravatar Stephane Glondu <steph@glondu.net>2008-08-08 13:18:42 +0200
committerGravatar Stephane Glondu <steph@glondu.net>2008-08-08 13:18:42 +0200
commit870075f34dd9fa5792bfbf413afd3b96f17e76a0 (patch)
tree0c647056de1832cf1dba5ba58758b9121418e4be /test-suite/success/CanonicalStructure.v
parenta0cfa4f118023d35b767a999d5a2ac4b082857b4 (diff)
Imported Upstream version 8.2~beta4+dfsgupstream/8.2.beta4+dfsg
Diffstat (limited to 'test-suite/success/CanonicalStructure.v')
-rw-r--r--test-suite/success/CanonicalStructure.v17
1 files changed, 17 insertions, 0 deletions
diff --git a/test-suite/success/CanonicalStructure.v b/test-suite/success/CanonicalStructure.v
index 44d21b83..b8cae471 100644
--- a/test-suite/success/CanonicalStructure.v
+++ b/test-suite/success/CanonicalStructure.v
@@ -12,3 +12,20 @@ Record Silly (X : Set) : Set := mkSilly { x : X }.
Definition anotherMk := mkSilly.
Definition struct := anotherMk nat 3.
Canonical Structure struct.
+
+(* Intertwinning canonical structures and delta-expansion *)
+(* Assia's short example *)
+
+Open Scope bool_scope.
+
+Set Implicit Arguments.
+
+Structure test_struct : Type := mk_test {dom :> Type; f : dom -> dom -> bool}.
+
+Notation " x != y":= (f _ x y)(at level 10).
+
+Canonical Structure bool_test := mk_test (fun x y => x || y).
+
+Definition b := bool.
+
+Check (fun x : b => x != x).