diff options
author | Karl Heuer <kwzh@gnu.org> | 1994-10-06 22:31:59 +0000 |
---|---|---|
committer | Karl Heuer <kwzh@gnu.org> | 1994-10-06 22:31:59 +0000 |
commit | 986e085dfd9da597ec7c790f8bb5f8bad7805b49 (patch) | |
tree | 62ed82bdfc50fc680aecf3f1d1c5f3b13de1effe /src/lread.c | |
parent | c3d1d2d152fa4aa6b0dac924e3fc349e5da3194b (diff) | |
download | emacs-986e085dfd9da597ec7c790f8bb5f8bad7805b49.tar.gz |
(defvar_per_buffer): Access buffer_local_flags as Lisp_Object, not int.
Give XSETBUFFER_OBJFWD an integer offset, not a pointer.
Diffstat (limited to 'src/lread.c')
-rw-r--r-- | src/lread.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/lread.c b/src/lread.c index fbe6366534e..e29d46dccdb 100644 --- a/src/lread.c +++ b/src/lread.c @@ -1826,7 +1826,8 @@ defvar_lisp_nopro (namestring, address) #ifndef standalone /* Similar but define a variable whose value is the Lisp Object stored in - the current buffer. address is the address of the slot in the buffer that is current now. */ + the current buffer. address is the address of the slot in the buffer + that is current now. */ void defvar_per_buffer (namestring, address, type, doc) @@ -1842,11 +1843,10 @@ defvar_per_buffer (namestring, address, type, doc) sym = intern (namestring); offset = (char *)address - (char *)current_buffer; - XSETBUFFER_OBJFWD (XSYMBOL (sym)->value, - (Lisp_Object *) offset); + XSETBUFFER_OBJFWD (XSYMBOL (sym)->value, offset); *(Lisp_Object *)(offset + (char *)&buffer_local_symbols) = sym; *(Lisp_Object *)(offset + (char *)&buffer_local_types) = type; - if (*(int *)(offset + (char *)&buffer_local_flags) == 0) + if (XINT (*(Lisp_Object *)(offset + (char *)&buffer_local_flags)) == 0) /* Did a DEFVAR_PER_BUFFER without initializing the corresponding slot of buffer_local_flags */ abort (); |