changeset 71973:7febc7ff0f0d

(circular_list_error): Use xsignal. (wrong_type_argument): Use xsignal2. Don't care about return value. (args_out_of_range, args_out_of_range_3): Use xsignal2, xsignal3. Remove loop around Fsignal. (indirect_variable, Fsymbol_value, set_internal, Fdefault_value) (indirect_function, Findirect_function, Fstring_to_number) (Fmakunbound, Ffmakunbound, Fsymbol_function, Ffset): Use xsignal1. (arith_driver, float_arith_driver, Frem, Fmod, arith_error): Use xsignal0.
author Kim F. Storm <storm@cua.dk>
date Tue, 18 Jul 2006 13:26:19 +0000
parents eaa3c19b94d2
children 9208340e9cad
files src/data.c
diffstat 1 files changed, 27 insertions(+), 37 deletions(-) [+]
line wrap: on
line diff
--- a/src/data.c	Tue Jul 18 13:26:12 2006 +0000
+++ b/src/data.c	Tue Jul 18 13:26:19 2006 +0000
@@ -105,7 +105,7 @@
 circular_list_error (list)
      Lisp_Object list;
 {
-  Fsignal (Qcircular_list, list);
+  xsignal (Qcircular_list, list);
 }
 
 
@@ -118,16 +118,7 @@
   if ((unsigned int) XGCTYPE (value) >= Lisp_Type_Limit)
     abort ();
 
-  Fsignal (Qwrong_type_argument, list2 (predicate, value));
-
-  /* This function is marked as NO_RETURN, gcc would warn if it has a
-     return statement or if falls off the function.  Other compilers
-     warn if no return statement is present.  */
-#ifndef __GNUC__
-  return value;
-#else
-  abort ();
-#endif
+  xsignal2 (Qwrong_type_argument, predicate, value);
 }
 
 void
@@ -140,16 +131,14 @@
 args_out_of_range (a1, a2)
      Lisp_Object a1, a2;
 {
-  while (1)
-    Fsignal (Qargs_out_of_range, Fcons (a1, Fcons (a2, Qnil)));
+  xsignal2 (Qargs_out_of_range, a1, a2);
 }
 
 void
 args_out_of_range_3 (a1, a2, a3)
      Lisp_Object a1, a2, a3;
 {
-  while (1)
-    Fsignal (Qargs_out_of_range, Fcons (a1, Fcons (a2, Fcons (a3, Qnil))));
+  xsignal3 (Qargs_out_of_range, a1, a2, a3);
 }
 
 /* On some machines, XINT needs a temporary location.
@@ -618,7 +607,7 @@
 {
   CHECK_SYMBOL (symbol);
   if (XSYMBOL (symbol)->constant)
-    return Fsignal (Qsetting_constant, Fcons (symbol, Qnil));
+    xsignal1 (Qsetting_constant, symbol);
   Fset (symbol, Qunbound);
   return symbol;
 }
@@ -631,7 +620,7 @@
 {
   CHECK_SYMBOL (symbol);
   if (NILP (symbol) || EQ (symbol, Qt))
-    return Fsignal (Qsetting_constant, Fcons (symbol, Qnil));
+    xsignal1 (Qsetting_constant, symbol);
   XSYMBOL (symbol)->function = Qunbound;
   return symbol;
 }
@@ -642,9 +631,9 @@
      register Lisp_Object symbol;
 {
   CHECK_SYMBOL (symbol);
-  if (EQ (XSYMBOL (symbol)->function, Qunbound))
-    return Fsignal (Qvoid_function, Fcons (symbol, Qnil));
-  return XSYMBOL (symbol)->function;
+  if (!EQ (XSYMBOL (symbol)->function, Qunbound))
+    return XSYMBOL (symbol)->function;
+  xsignal1 (Qvoid_function, symbol);
 }
 
 DEFUN ("symbol-plist", Fsymbol_plist, Ssymbol_plist, 1, 1, 0,
@@ -675,7 +664,7 @@
 {
   CHECK_SYMBOL (symbol);
   if (NILP (symbol) || EQ (symbol, Qt))
-    return Fsignal (Qsetting_constant, Fcons (symbol, Qnil));
+    xsignal1 (Qsetting_constant, symbol);
   if (!NILP (Vautoload_queue) && !EQ (XSYMBOL (symbol)->function, Qunbound))
     Vautoload_queue = Fcons (Fcons (symbol, XSYMBOL (symbol)->function),
 			     Vautoload_queue);
@@ -817,7 +806,7 @@
       tortoise = XSYMBOL (tortoise)->value;
 
       if (EQ (hare, tortoise))
-	Fsignal (Qcyclic_variable_indirection, Fcons (symbol, Qnil));
+	xsignal1 (Qcyclic_variable_indirection, symbol);
     }
 
   return hare;
@@ -1118,10 +1107,10 @@
   Lisp_Object val;
 
   val = find_symbol_value (symbol);
-  if (EQ (val, Qunbound))
-    return Fsignal (Qvoid_variable, Fcons (symbol, Qnil));
-  else
+  if (!EQ (val, Qunbound))
     return val;
+
+  xsignal1 (Qvoid_variable, symbol);
 }
 
 DEFUN ("set", Fset, Sset, 2, 2, 0,
@@ -1185,7 +1174,7 @@
   if (SYMBOL_CONSTANT_P (symbol)
       && (NILP (Fkeywordp (symbol))
 	  || !EQ (newval, SYMBOL_VALUE (symbol))))
-    return Fsignal (Qsetting_constant, Fcons (symbol, Qnil));
+    xsignal1 (Qsetting_constant, symbol);
 
   innercontents = valcontents = SYMBOL_VALUE (symbol);
 
@@ -1379,9 +1368,10 @@
   register Lisp_Object value;
 
   value = default_value (symbol);
-  if (EQ (value, Qunbound))
-    return Fsignal (Qvoid_variable, Fcons (symbol, Qnil));
-  return value;
+  if (!EQ (value, Qunbound))
+    return value;
+
+  xsignal1 (Qvoid_variable, symbol);
 }
 
 DEFUN ("set-default", Fset_default, Sset_default, 2, 2, 0,
@@ -1893,7 +1883,7 @@
       tortoise = XSYMBOL (tortoise)->function;
 
       if (EQ (hare, tortoise))
-	Fsignal (Qcyclic_function_indirection, Fcons (object, Qnil));
+	xsignal1 (Qcyclic_function_indirection, object);
     }
 
   return hare;
@@ -1922,7 +1912,7 @@
     return result;
 
   if (NILP (noerror))
-    Fsignal (Qvoid_function, Fcons (object, Qnil));
+    xsignal1 (Qvoid_function, object);
 
   return Qnil;
 }
@@ -2462,7 +2452,7 @@
       CHECK_NUMBER (base);
       b = XINT (base);
       if (b < 2 || b > 16)
-	Fsignal (Qargs_out_of_range, Fcons (base, Qnil));
+	xsignal1 (Qargs_out_of_range, base);
     }
 
   /* Skip any whitespace at the front of the number.  Some versions of
@@ -2574,7 +2564,7 @@
 	  else
 	    {
 	      if (next == 0)
-		Fsignal (Qarith_error, Qnil);
+		xsignal0 (Qarith_error);
 	      accum /= next;
 	    }
 	  break;
@@ -2647,7 +2637,7 @@
 	  else
 	    {
 	      if (! IEEE_FLOATING_POINT && next == 0)
-		Fsignal (Qarith_error, Qnil);
+		xsignal0 (Qarith_error);
 	      accum /= next;
 	    }
 	  break;
@@ -2729,7 +2719,7 @@
   CHECK_NUMBER_COERCE_MARKER (y);
 
   if (XFASTINT (y) == 0)
-    Fsignal (Qarith_error, Qnil);
+    xsignal0 (Qarith_error);
 
   XSETINT (val, XINT (x) % XINT (y));
   return val;
@@ -2778,7 +2768,7 @@
   i2 = XINT (y);
 
   if (i2 == 0)
-    Fsignal (Qarith_error, Qnil);
+    xsignal0 (Qarith_error);
 
   i1 %= i2;
 
@@ -3382,7 +3372,7 @@
 #endif /* not BSD4_1 */
 
   SIGNAL_THREAD_CHECK (signo);
-  Fsignal (Qarith_error, Qnil);
+  xsignal0 (Qarith_error);
 }
 
 void