changeset 58897:98e94b29b59b

(Fforward_word): Avoid non-idempotent side-effects in macro arguments.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sat, 11 Dec 2004 21:59:15 +0000
parents dc2516edbe6c
children 27a76c55b4ca
files src/syntax.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/syntax.c	Sat Dec 11 21:57:50 2004 +0000
+++ b/src/syntax.c	Sat Dec 11 21:59:15 2004 +0000
@@ -1295,6 +1295,7 @@
      (arg)
      Lisp_Object arg;
 {
+  Lisp_Object tmp;
   int orig_val, val;
 
   if (NILP (arg))
@@ -1307,8 +1308,9 @@
     val = XINT (arg) > 0 ? ZV : BEGV;
 
   /* Avoid jumping out of an input field.  */
-  val = XFASTINT (Fconstrain_to_field (make_number (val), make_number (PT),
-				       Qt, Qnil, Qnil));
+  tmp = Fconstrain_to_field (make_number (val), make_number (PT),
+			     Qt, Qnil, Qnil);
+  val = XFASTINT (tmp);
 
   SET_PT (val);
   return val == orig_val ? Qt : Qnil;