diff src/fns.c @ 39973:579177964efa

Avoid (most) uses of XCAR/XCDR as lvalues, for flexibility in experimenting with lisp system changes.
author Ken Raeburn <raeburn@raeburn.org>
date Tue, 16 Oct 2001 09:09:51 +0000
parents 51a89919bc4e
children 51c2b8f7aa5a
line wrap: on
line diff
--- a/src/fns.c	Mon Oct 15 20:52:59 2001 +0000
+++ b/src/fns.c	Tue Oct 16 09:09:51 2001 +0000
@@ -782,7 +782,7 @@
 	    /* Store this element into the result.  */
 	    if (toindex < 0)
 	      {
-		XCAR (tail) = elt;
+		XSETCAR (tail, elt);
 		prev = tail;
 		tail = XCDR (tail);
 	      }
@@ -823,7 +823,7 @@
 	  }
     }
   if (!NILP (prev))
-    XCDR (prev) = last_tail;
+    XSETCDR (prev, last_tail);
 
   if (num_textprops > 0)
     {
@@ -1159,7 +1159,7 @@
       car = XCAR (tem);
 
       if (CONSP (car))
-	XCAR (tem) = Fcons (XCAR (car), XCDR (car));
+	XSETCAR (tem, Fcons (XCAR (car), XCDR (car)));
     }
   return alist;
 }
@@ -3153,7 +3153,7 @@
      Lisp_Object widget, property, value;
 {
   CHECK_CONS (widget, 1);
-  XCDR (widget) = Fplist_put (XCDR (widget), property, value);
+  XSETCDR (widget, Fplist_put (XCDR (widget), property, value));
   return value;
 }