From 2592ea6490cdf799432260c99a934605a2739849 Mon Sep 17 00:00:00 2001 From: Hugo Herbelin Date: Wed, 22 Oct 2014 10:32:45 +0200 Subject: Fixing an evar leak in pattern-matching compilation (#3758). --- test-suite/success/Cases-bug3758.v | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 test-suite/success/Cases-bug3758.v (limited to 'test-suite') diff --git a/test-suite/success/Cases-bug3758.v b/test-suite/success/Cases-bug3758.v new file mode 100644 index 000000000..e48f45232 --- /dev/null +++ b/test-suite/success/Cases-bug3758.v @@ -0,0 +1,17 @@ +(* There used to be an evar leak in the to_nat example *) + +Require Import Coq.Lists.List. +Import ListNotations. + +Fixpoint Idx {A:Type} (l:list A) : Type := + match l with + | [] => False + | _::l => True + Idx l + end. + +Fixpoint to_nat {A:Type} (l:list A) (i:Idx l) : nat := + match l,i with + | [] , i => match i with end + | _::_, inl _ => 0 + | _::l, inr i => S (to_nat l i) + end. -- cgit v1.2.3