From 754a567d8a9c0a7b7f6567fa294045fef8be59ca Mon Sep 17 00:00:00 2001 From: herbelin Date: Wed, 21 Nov 2001 21:35:47 +0000 Subject: *** empty log message *** git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2238 85f007b7-540e-0410-9357-904b9bb8a0f7 --- test-suite/failure/cases.v | 6 ++++++ test-suite/success/CaseAlias.v | 21 +++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 test-suite/failure/cases.v create mode 100644 test-suite/success/CaseAlias.v diff --git a/test-suite/failure/cases.v b/test-suite/failure/cases.v new file mode 100644 index 0000000000..a27b07f876 --- /dev/null +++ b/test-suite/failure/cases.v @@ -0,0 +1,6 @@ +(* Non exhaustive pattern-matching *) + +Check [x]Cases x x of + O (S (S y)) => true + | O (S x) => false + | (S y) O => true end. \ No newline at end of file diff --git a/test-suite/success/CaseAlias.v b/test-suite/success/CaseAlias.v new file mode 100644 index 0000000000..b5f0e730e3 --- /dev/null +++ b/test-suite/success/CaseAlias.v @@ -0,0 +1,21 @@ +(* This has been a bug reported by Y. Bertot *) +Inductive expr : Set := + b: expr -> expr -> expr + | u: expr -> expr + | a: expr + | var: nat -> expr . + +Fixpoint f [t : expr] : expr := + Cases t of + | (b t1 t2) => (b (f t1) (f t2)) + | a => a + | x => (b t a) + end. + +Fixpoint f2 [t : expr] : expr := + Cases t of + | (b t1 t2) => (b (f2 t1) (f2 t2)) + | a => a + | x => (b x a) + end. + -- cgit v1.2.3