diff options
author | letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2009-11-06 17:16:27 +0000 |
---|---|---|
committer | letouzey <letouzey@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2009-11-06 17:16:27 +0000 |
commit | 4237fa16d23101bc05ebc9a3dad168be4f3f64d8 (patch) | |
tree | 636056a026432a58b61ee66841e95dfee9a82875 /theories/Init/Datatypes.v | |
parent | c5f077f5680951fff590082effa0e2843706962e (diff) |
Datatypes.length and app defined back via fun+fix instead of Fixpoint
Since length and app were defined inside a Section in List.v,
their type argument A wasn't inside the fixpoint. Restoring
the initial definition repairs (at least) Cachan/IntMap.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12477 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Init/Datatypes.v')
-rw-r--r-- | theories/Init/Datatypes.v | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/theories/Init/Datatypes.v b/theories/Init/Datatypes.v index 78d0110ae..fc64f081b 100644 --- a/theories/Init/Datatypes.v +++ b/theories/Init/Datatypes.v @@ -250,7 +250,8 @@ Bind Scope list_scope with list. Local Open Scope list_scope. -Fixpoint length (A : Type) (l:list A) : nat := +Definition length (A : Type) : list A -> nat := + fix length l := match l with | nil => O | _ :: l' => S (length l') @@ -258,7 +259,8 @@ Fixpoint length (A : Type) (l:list A) : nat := (** Concatenation of two lists *) -Fixpoint app (A : Type) (l m:list A) : list A := +Definition app (A : Type) : list A -> list A -> list A := + fix app l m := match l with | nil => m | a :: l1 => a :: app l1 m |