summaryrefslogtreecommitdiff
path: root/src/lisp.h
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2000-10-02 11:11:12 +0000
committerGerd Moellmann <gerd@gnu.org>2000-10-02 11:11:12 +0000
commit834168efd88f54f6f7033123fbc383346f7ea5bf (patch)
treeaddb9365c7a14f8db5e1a6f760f347f72091816f /src/lisp.h
parent4eaa6852c9b55d05daf0a2f3ecc37c05121adf03 (diff)
downloademacs-834168efd88f54f6f7033123fbc383346f7ea5bf.tar.gz
emacs-834168efd88f54f6f7033123fbc383346f7ea5bf.tar.bz2
emacs-834168efd88f54f6f7033123fbc383346f7ea5bf.zip
(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.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 1053feaf65a..0e45bbe4eec 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1630,14 +1630,19 @@ extern int gc_cons_threshold;
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 Lisp_Object long_to_cons P_ ((unsigned long));
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 (Fcatch, UNEVALLED);
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);