• Dmitry Antipov's avatar
    Omit buffer_slot_type_mismatch and use generic predicates to enforce · 58cc0a01
    Dmitry Antipov authored
    the type of per-buffer values where appropriate.
    * src/lisp.h (struct Lisp_Buffer_Objfwd): Rename slottype member to
    predicate, which is how it's really used now.  Adjust comment.
    * src/buffer.h (buffer_slot_type_mismatch): Remove prototype.
    * src/buffer.c (buffer_slot_type_mismatch): Remove.
    (DEFVAR_PER_BUFFER, defvar_per_buffer): Rename type argument to
    predicate.  Adjust comment.
    (syms_of_buffer): Use Qsymbolp for major-mode.  Use Qintegerp for
    fill-column, left-margin, tab-width, buffer-saved-size,
    left-margin-width, right-margin-width, left-fringe-width,
    right-fringe-width, scroll-bar-width and buffer-display-count.
    Use Qstringp for default-directory, buffer-file-name,
    buffer-file-truename and buffer-auto-save-file-name.  Use Qfloatp for
    scroll-up-aggressively and scroll-down-aggressively.  Use Qnumberp for
    line-spacing.
    * src/data.c (store_symval_forwarding): Adjust to call the predicate.
    * lisp/cus-start.el (toplevel): Only allow float values for
    scroll-up-aggressively and scroll-down-aggressively.
    Allow any number for line-spacing.
    58cc0a01
cus-start.el 23.3 KB