1. 22 Apr, 2019 5 commits
    • Phil Sainty's avatar
      fixup! Add :before-hook keyword to define-derived-mode · 95cea37f
      Phil Sainty authored
      Run :before-hook right away, rather than using change-major-mode-hook.
      
      This changes the :before-hook sequence to child-before-parent rather
      than parent-before-child.
      95cea37f
    • Phil Sainty's avatar
      Add :before-hook keyword to define-derived-mode · 196b9760
      Phil Sainty authored
      * lisp/emacs-lisp/derived.el (define-derived-mode): New keyword
      * doc/lispref/modes.texi: Update "(elisp) Derived Modes"
      * etc/NEWS: Include under "Lisp Changes in Emacs 27.1"
      196b9760
    • Paul Eggert's avatar
      Fix drain_reloc_list alignment bug · e85bff0b
      Paul Eggert authored
      * src/pdumper.c (dump_charset): Use alignof (struct charset),
      not alignof (int), since struct charset might be more strictly
      aligned than int.  I think this is just a minor performance
      issue, but we might as well use the correct alignment.
      (drain_reloc_list): Use an alignment instead of a size for the
      output alignment.  This prevents undefined behavior when
      alignof (struct emacs_reloc) == 8 and sizeof (dump_off) == 4
      when building on x86-64 with gcc -fsanitize=undefined.
      e85bff0b
    • Paul Eggert's avatar
      Port dump_bitset_clear to -fsanitize=undefined · 4a5ed6b0
      Paul Eggert authored
      * src/pdumper.c (dump_bitset_clear):
      Pacify -fsanitize=undefined by avoiding memset (NULL, x, 0),
      which strictly speaking has undefined behavior although it
      works on all production platforms I know.
      4a5ed6b0
    • Paul Eggert's avatar
      Port to recent gcc -fsanitize=undefined · f67bc3f1
      Paul Eggert authored
      * src/alloc.c (XPNTR): Add ATTRIBUTE_NO_SANITIZE_UNDEFINED and
      remove ATTRIBUTE_UNUSED.  Do not define as a macro, so that
      ATTRIBUTE_NO_SANITIZE_UNDEFINED works.
      * src/lisp.h (lisp_h_XSYMBOL): Remove.  All uses removed.
      With recent GCC the macro does not work with -fsanitize=undefined,
      and the macro can be omitted as its only function is to optimize -O0.
      f67bc3f1
  2. 21 Apr, 2019 20 commits
  3. 20 Apr, 2019 15 commits