diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-10-06 09:50:54 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2017-10-06 09:50:54 -0400 |
commit | 11f9cb522fed9aa6552f6315340ca7352661a1e8 (patch) | |
tree | 39facc48471c67b321c045e47d70ef030adbea44 /src/lisp.h | |
parent | 92045f4546b9708dc9f69954799d211c1f56ff1e (diff) | |
parent | 9655937da4a339300c624addd97674c038a01bc9 (diff) | |
download | emacs-11f9cb522fed9aa6552f6315340ca7352661a1e8.tar.gz emacs-11f9cb522fed9aa6552f6315340ca7352661a1e8.tar.bz2 emacs-11f9cb522fed9aa6552f6315340ca7352661a1e8.zip |
Merge emacs-26
Diffstat (limited to 'src/lisp.h')
-rw-r--r-- | src/lisp.h | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/lisp.h b/src/lisp.h index 680c25d4c49..266370333f5 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -1865,6 +1865,26 @@ verify (offsetof (struct Lisp_Sub_Char_Table, contents) == (offsetof (struct Lisp_Vector, contents) + SUB_CHAR_TABLE_OFFSET * sizeof (Lisp_Object))); + +/* Save and restore the instruction and environment pointers, + without affecting the signal mask. */ + +#ifdef HAVE__SETJMP +typedef jmp_buf sys_jmp_buf; +# define sys_setjmp(j) _setjmp (j) +# define sys_longjmp(j, v) _longjmp (j, v) +#elif defined HAVE_SIGSETJMP +typedef sigjmp_buf sys_jmp_buf; +# define sys_setjmp(j) sigsetjmp (j, 0) +# define sys_longjmp(j, v) siglongjmp (j, v) +#else +/* A platform that uses neither _longjmp nor siglongjmp; assume + longjmp does not affect the sigmask. */ +typedef jmp_buf sys_jmp_buf; +# define sys_setjmp(j) setjmp (j) +# define sys_longjmp(j, v) longjmp (j, v) +#endif + #include "thread.h" /*********************************************************************** @@ -3003,25 +3023,6 @@ extern void defvar_kboard (struct Lisp_Kboard_Objfwd *, const char *, int); static struct Lisp_Kboard_Objfwd ko_fwd; \ defvar_kboard (&ko_fwd, lname, offsetof (KBOARD, vname ## _)); \ } while (false) - -/* Save and restore the instruction and environment pointers, - without affecting the signal mask. */ - -#ifdef HAVE__SETJMP -typedef jmp_buf sys_jmp_buf; -# define sys_setjmp(j) _setjmp (j) -# define sys_longjmp(j, v) _longjmp (j, v) -#elif defined HAVE_SIGSETJMP -typedef sigjmp_buf sys_jmp_buf; -# define sys_setjmp(j) sigsetjmp (j, 0) -# define sys_longjmp(j, v) siglongjmp (j, v) -#else -/* A platform that uses neither _longjmp nor siglongjmp; assume - longjmp does not affect the sigmask. */ -typedef jmp_buf sys_jmp_buf; -# define sys_setjmp(j) setjmp (j) -# define sys_longjmp(j, v) longjmp (j, v) -#endif /* Elisp uses several stacks: @@ -3969,7 +3970,6 @@ extern _Noreturn void time_overflow (void); extern Lisp_Object make_buffer_string (ptrdiff_t, ptrdiff_t, bool); extern Lisp_Object make_buffer_string_both (ptrdiff_t, ptrdiff_t, ptrdiff_t, ptrdiff_t, bool); -extern Lisp_Object styled_format (ptrdiff_t, Lisp_Object *, bool, bool); extern void init_editfns (bool); extern void syms_of_editfns (void); |