diff options
| author | Paul Eggert | 2019-04-08 12:59:22 -0700 |
|---|---|---|
| committer | Paul Eggert | 2019-04-08 13:01:21 -0700 |
| commit | a038df77de7b1aa2d73a6478493b8838b59e4982 (patch) | |
| tree | fbaa0087bab52a815dfd249d189301e53de0d345 /src/thread.h | |
| parent | 31e9087cdcd0b78b2247c3d8532290881abfbb08 (diff) | |
| download | emacs-a038df77de7b1aa2d73a6478493b8838b59e4982.tar.gz emacs-a038df77de7b1aa2d73a6478493b8838b59e4982.zip | |
Allow gap before first non-Lisp pseudovec member
Problem reported by Keith David Bershatsky in:
https://lists.gnu.org/r/emacs-devel/2019-04/msg00259.html
Solution suggested by Stefan Monnier in:
https://lists.gnu.org/r/emacs-devel/2019-04/msg00282.html
* src/buffer.h (BUFFER_LISP_SIZE): Simplify by using PSEUDOVECSIZE.
(BUFFER_REST_SIZE): Simplify by using VECSIZE and BUFFER_LISP_SIZE.
* src/lisp.h (PSEUDOVECSIZE): Base it on the last Lisp field,
not the first non-Lisp field. All callers changed. Callers
without Lisp fields changed to use ALLOCATE_PLAIN_PSEUDOVECTOR.
(ALLOCATE_PLAIN_PSEUDOVECTOR): New macro.
Diffstat (limited to 'src/thread.h')
| -rw-r--r-- | src/thread.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/thread.h b/src/thread.h index 50f8f5cbe0a..0514669a87d 100644 --- a/src/thread.h +++ b/src/thread.h | |||
| @@ -61,8 +61,8 @@ struct thread_state | |||
| 61 | /* If we are waiting for some event, this holds the object we are | 61 | /* If we are waiting for some event, this holds the object we are |
| 62 | waiting on. */ | 62 | waiting on. */ |
| 63 | Lisp_Object event_object; | 63 | Lisp_Object event_object; |
| 64 | /* event_object must be the last Lisp field. */ | ||
| 64 | 65 | ||
| 65 | /* m_stack_bottom must be the first non-Lisp field. */ | ||
| 66 | /* An address near the bottom of the stack. | 66 | /* An address near the bottom of the stack. |
| 67 | Tells GC how to save a copy of the stack. */ | 67 | Tells GC how to save a copy of the stack. */ |
| 68 | char const *m_stack_bottom; | 68 | char const *m_stack_bottom; |