changeset 32065:4f8ce7eb45a5

(wrong_type_argument): Remove NO_RETURN, the function can return with a string converted to an integer or vice versa when Vmocklisp_arguments is t. (Fsignal): Likewise. The function can return for `quit'. (struct gcpro): Declare member `var' to point to a volatile Lisp_Object.
author Gerd Moellmann <gerd@gnu.org>
date Mon, 02 Oct 2000 11:11:12 +0000
parents ac184f93f0f3
children 7dc36953bf54
files src/lisp.h
diffstat 1 files changed, 13 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/lisp.h	Mon Oct 02 06:50:45 2000 +0000
+++ b/src/lisp.h	Mon Oct 02 11:11:12 2000 +0000
@@ -1630,14 +1630,19 @@
 extern struct gcpro *gcprolist;
 
 struct gcpro
-  {
-    struct gcpro *next;
-    Lisp_Object *var;		/* Address of first protected variable */
-    int nvars;			/* Number of consecutive protected variables */
+{
+  struct gcpro *next;
+  
+  /* Address of first protected variable.  */
+  volatile Lisp_Object *var;
+  
+  /* Number of consecutive protected variables.  */
+  int nvars;
+  
 #ifdef DEBUG_GCPRO
-    int level;
+  int level;
 #endif
-  };
+};
 
 /* Values of GC_MARK_STACK during compilation:
 
@@ -1898,7 +1903,7 @@
 extern unsigned long cons_to_long P_ ((Lisp_Object));
 extern void args_out_of_range P_ ((Lisp_Object, Lisp_Object));
 extern void args_out_of_range_3 P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
-extern Lisp_Object wrong_type_argument P_ ((Lisp_Object, Lisp_Object)) NO_RETURN;
+extern Lisp_Object wrong_type_argument P_ ((Lisp_Object, Lisp_Object));
 extern void store_symval_forwarding P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
 extern Lisp_Object do_symval_forwarding P_ ((Lisp_Object));
 extern Lisp_Object set_internal P_ ((Lisp_Object, Lisp_Object, struct buffer *, int));
@@ -2300,7 +2305,7 @@
 EXFUN (Fthrow, 2) NO_RETURN;
 EXFUN (Funwind_protect, UNEVALLED);
 EXFUN (Fcondition_case, UNEVALLED);
-EXFUN (Fsignal, 2) NO_RETURN;
+EXFUN (Fsignal, 2);
 EXFUN (Fautoload, 5);
 EXFUN (Fcommandp, 1);
 EXFUN (Feval, 1);