diff src/bytecode.c @ 90533:8a8e69664178

Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 343-356) - Update from CVS - Update for ERC 5.1.3. - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 113-115) - Merge from emacs--devo--0 - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-90
author Miles Bader <miles@gnu.org>
date Wed, 19 Jul 2006 00:42:56 +0000
parents c5406394f567 a0954041b695
children dbe3f29e61d6
line wrap: on
line diff
--- a/src/bytecode.c	Fri Jul 14 02:25:53 2006 +0000
+++ b/src/bytecode.c	Wed Jul 19 00:42:56 2006 +0000
@@ -433,8 +433,7 @@
 #endif
 
   CHECK_STRING (bytestr);
-  if (!VECTORP (vector))
-    vector = wrong_type_argument (Qvectorp, vector);
+  CHECK_VECTOR (vector);
   CHECK_NUMBER (maxdepth);
 
   if (STRING_MULTIBYTE (bytestr))
@@ -542,14 +541,7 @@
 	  {
 	    Lisp_Object v1;
 	    v1 = TOP;
-	    if (CONSP (v1))
-	      TOP = XCAR (v1);
-	    else if (NILP (v1))
-	      TOP = Qnil;
-	    else
-	      {
-		wrong_type_argument (Qlistp, v1);
-	      }
+	    TOP = CAR (v1);
 	    break;
 	  }
 
@@ -575,14 +567,7 @@
 	  {
 	    Lisp_Object v1;
 	    v1 = TOP;
-	    if (CONSP (v1))
-	      TOP = XCDR (v1);
-	    else if (NILP (v1))
-	      TOP = Qnil;
-	    else
-	      {
-		wrong_type_argument (Qlistp, v1);
-	      }
+	    TOP = CDR (v1);
 	    break;
 	  }
 
@@ -917,23 +902,10 @@
 	    AFTER_POTENTIAL_GC ();
 	    op = XINT (v2);
 	    immediate_quit = 1;
-	    while (--op >= 0)
-	      {
-		if (CONSP (v1))
-		  v1 = XCDR (v1);
-		else if (!NILP (v1))
-		  {
-		    immediate_quit = 0;
-		    wrong_type_argument (Qlistp, v1);
-		  }
-	      }
+	    while (--op >= 0 && CONSP (v1))
+	      v1 = XCDR (v1);
 	    immediate_quit = 0;
-	    if (CONSP (v1))
-	      TOP = XCAR (v1);
-	    else if (NILP (v1))
-	      TOP = Qnil;
-	    else
-	      wrong_type_argument (Qlistp, v1);
+	    TOP = CAR (v1);
 	    break;
 	  }
 
@@ -1563,23 +1535,10 @@
 		AFTER_POTENTIAL_GC ();
 		op = XINT (v2);
 		immediate_quit = 1;
-		while (--op >= 0)
-		  {
-		    if (CONSP (v1))
-		      v1 = XCDR (v1);
-		    else if (!NILP (v1))
-		      {
-			immediate_quit = 0;
-			wrong_type_argument (Qlistp, v1);
-		      }
-		  }
+		while (--op >= 0 && CONSP (v1))
+		  v1 = XCDR (v1);
 		immediate_quit = 0;
-		if (CONSP (v1))
-		  TOP = XCAR (v1);
-		else if (NILP (v1))
-		  TOP = Qnil;
-		else
-		  wrong_type_argument (Qlistp, v1);
+		TOP = CAR (v1);
 	      }
 	    else
 	      {
@@ -1641,10 +1600,7 @@
 	  {
 	    Lisp_Object v1;
 	    v1 = TOP;
-	    if (CONSP (v1))
-	      TOP = XCAR (v1);
-	    else
-	      TOP = Qnil;
+	    TOP = CAR_SAFE (v1);
 	    break;
 	  }
 
@@ -1652,10 +1608,7 @@
 	  {
 	    Lisp_Object v1;
 	    v1 = TOP;
-	    if (CONSP (v1))
-	      TOP = XCDR (v1);
-	    else
-	      TOP = Qnil;
+	    TOP = CDR_SAFE (v1);
 	    break;
 	  }