From 9d14ae763f967c44dfc99ffc4a86ed88cf6f2c48 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Mon, 23 Jun 1997 18:56:17 +0000 Subject: [PATCH] (Freverse): Simplify. --- src/fns.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/src/fns.c b/src/fns.c index d8f51afbde0..9e8a15d5578 100644 --- a/src/fns.c +++ b/src/fns.c @@ -882,17 +882,13 @@ See also the function `nreverse', which is used more often.") (list) Lisp_Object list; { - Lisp_Object length; - register Lisp_Object *vec; - register Lisp_Object tail; - register int i; - - length = Flength (list); - vec = (Lisp_Object *) alloca (XINT (length) * sizeof (Lisp_Object)); - for (i = XINT (length) - 1, tail = list; i >= 0; i--, tail = Fcdr (tail)) - vec[i] = Fcar (tail); + Lisp_Object new; - return Flist (XINT (length), vec); + for (new = Qnil; CONSP (list); list = XCONS (list)->cdr) + new = Fcons (XCONS (list)->car, new); + if (!NILP (list)) + wrong_type_argument (Qconsp, list); + return new; } Lisp_Object merge (); -- 2.39.5