X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/36e37d632e6f089a89f4fc59ae6c2bf90d37e9d3..1e206719d56dd185c2167cc0d4c1b3c6f857582e:/src/mocklisp.c diff --git a/src/mocklisp.c b/src/mocklisp.c index 86243fc987..928edf1cea 100644 --- a/src/mocklisp.c +++ b/src/mocklisp.c @@ -1,11 +1,11 @@ /* Mocklisp compatibility functions for GNU Emacs Lisp interpreter. - Copyright (C) 1985, 1986 Free Software Foundation, Inc. + Copyright (C) 1985, 1986, 1995 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 1, or (at your option) +the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, @@ -15,12 +15,13 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to -the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ /* Compatibility for mocklisp */ -#include "config.h" +#include #include "lisp.h" #include "buffer.h" @@ -32,7 +33,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ * { * Lisp_Object elt; * -* while (!NULL (args)) +* while (!NILP (args)) * { * elt = Fcar (args); * Ffset (Fcar (elt), Fcons (Qmocklisp, Fcdr (elt))); @@ -50,11 +51,11 @@ DEFUN ("ml-if", Fml_if, Sml_if, 0, UNEVALLED, 0, "Mocklisp version of `if'.") struct gcpro gcpro1; GCPRO1 (args); - while (!NULL (args)) + while (!NILP (args)) { val = Feval (Fcar (args)); args = Fcdr (args); - if (NULL (args)) break; + if (NILP (args)) break; if (XINT (val)) { val = Feval (Fcar (args)); @@ -119,7 +120,7 @@ DEFUN ("ml-arg", Fml_arg, Sml_arg, 1, 2, 0, Lisp_Object n, prompt; { if (EQ (Vmocklisp_arguments, Qinteractive)) - return Fread_string (prompt, Qnil); + return Fread_string (prompt, Qnil, Qnil, Qnil, Qnil); CHECK_NUMBER (n, 0); XSETINT (n, XINT (n) - 1); /* Mocklisp likes to be origin-1 */ return Fcar (Fnthcdr (n, Vmocklisp_arguments)); @@ -156,7 +157,7 @@ DEFUN ("ml-prefix-argument-loop", Fml_prefix_argument_loop, Sml_prefix_argument_ struct gcpro gcpro1; /* Set `arg' in case we call a built-in function that looks at it. Still are a few. */ - if (NULL (Vcurrent_prefix_arg)) + if (NILP (Vcurrent_prefix_arg)) i = 1; else { @@ -194,7 +195,7 @@ If either FROM or LENGTH is negative, the length of STRING is added to it.") XSETINT (to, XINT (to) + XINT (from)); return Fsubstring (string, from, to); } -#endif NOTDEF +#endif /* 0 */ DEFUN ("insert-string", Finsert_string, Sinsert_string, 0, MANY, 0, "Mocklisp-compatibility insert function.\n\ Like the function `insert' except that any argument that is a number\n\ @@ -205,18 +206,14 @@ is converted into a string by expressing it in decimal.") { register int argnum; register Lisp_Object tem; - struct gcpro gcpro1; - - GCPRO1 (*args); - gcpro1.nvars = nargs; for (argnum = 0; argnum < nargs; argnum++) { tem = args[argnum]; retry: - if (XTYPE (tem) == Lisp_Int) - tem = Fint_to_string (tem); - if (XTYPE (tem) == Lisp_String) + if (INTEGERP (tem)) + tem = Fnumber_to_string (tem); + if (STRINGP (tem)) insert1 (tem); else { @@ -225,7 +222,6 @@ is converted into a string by expressing it in decimal.") } } - UNGCPRO; return Qnil; }