summaryrefslogtreecommitdiff
path: root/stdlib/pervasives.ml
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1998-07-31 12:49:52 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1998-07-31 12:49:52 +0000
commit37ca07d447b82c611e5de8f4ed079d9b67fb43e5 (patch)
treeb406602a315440a9c66ca28cf291dd8e909e43de /stdlib/pervasives.ml
parenta470909e3340125b19050fba427e90edb2c4dee1 (diff)
downloadocaml-37ca07d447b82c611e5de8f4ed079d9b67fb43e5.tar.gz
Retour a l'ancienne implementation de @ (non tail-rec)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2023 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib/pervasives.ml')
-rw-r--r--stdlib/pervasives.ml9
1 files changed, 4 insertions, 5 deletions
diff --git a/stdlib/pervasives.ml b/stdlib/pervasives.ml
index 99d3b716ca..73ff3e4b98 100644
--- a/stdlib/pervasives.ml
+++ b/stdlib/pervasives.ml
@@ -144,11 +144,10 @@ external float_of_string : string -> float = "float_of_string"
(* List operations -- more in module List *)
-let rec rev_append accu = function
- | [] -> accu
- | a::l -> rev_append (a :: accu) l
-
-let (@) l1 l2 = rev_append l2 (rev_append [] l1);;
+let rec (@) l1 l2 =
+ match l1 with
+ [] -> l2
+ | hd :: tl -> hd :: (tl @ l2)
(* I/O operations *)