]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp.h (XSETSUBR): Revert, as the old version is needed if debugging is enabled.
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 25 Sep 2011 21:04:04 +0000 (14:04 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 25 Sep 2011 21:04:04 +0000 (14:04 -0700)
src/ChangeLog
src/lisp.h

index cc6c01a4360eff73ad1ee8c9e410fb07a0995a55..1769f91aaf208606d1ddcf27e1317b21233bdec9 100644 (file)
        (struct Lisp_Marker):
        Use ptrdiff_t, not EMACS_INT, where ptrdiff_t is wide enough.
        (clip_to_bounds): Now an inline function, moved here from editfns.c.
-       (XSETSUBR): Use size of 0 since the actual size doesn't matter,
-       and using 0 avoids overflow.
        (GLYPH_CODE_P): Check for overflow in system types, subsuming the
        need for GLYPH_CODE_CHAR_VALID_P and doing proper checking ourselves.
        All callers changed.
index ed8eb2720b5390469a1683eb4b352a91c525bff5..2c54c9b41ed1e3707043061636fe54d03193ec0a 100644 (file)
@@ -664,7 +664,8 @@ clip_to_bounds (ptrdiff_t lower, EMACS_INT num, ptrdiff_t upper)
 #define XSETWINDOW(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_WINDOW))
 #define XSETTERMINAL(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_TERMINAL))
 /* XSETSUBR is special since Lisp_Subr lacks struct vectorlike_header.  */
-#define XSETSUBR(a, b) XSETTYPED_PSEUDOVECTOR (a, b, 0, PVEC_SUBR)
+#define XSETSUBR(a, b) \
+  XSETTYPED_PSEUDOVECTOR (a, b, XSUBR (a)->size, PVEC_SUBR)
 #define XSETCOMPILED(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_COMPILED))
 #define XSETBUFFER(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_BUFFER))
 #define XSETCHAR_TABLE(a, b) (XSETPSEUDOVECTOR (a, b, PVEC_CHAR_TABLE))