• Paul Eggert's avatar
    Use Gnulib stdalign and environ modules (Bug#9772, Bug#9960). · e32a5799
    Paul Eggert authored
    * .bzrignore: Add lib/stdalign.h.
    * config.bat: Do not set NO_DECL_ALIGN; no longer needed.
    Copy lib/stdalign.in.h to lib/stdalign.in-h as needed.
    * configure.ac (HAVE_ATTRIBUTE_ALIGNED): Remove the code that
    fiddles with this, as gnulib now does this for us.
    * admin/merge-gnulib: Add environ, stdalign.
    * m4/environ.m4: New file, from gnulib.
    * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
    * lib/stdalign.in.h, m4/stdalign.m4: New files, from gnulib.
    * sed2v2.inp (HAVE_ATTRIBUTE_ALIGNED): Remove edit.
    * sedlibmk.inp (STDALIGN_H, @GL_GENERATE_STDALIGN_H_TRUE@)
    (GL_GENERATE_STDALIGN_H_FALSE): New edits.
    * nt/config.nt (HAVE_ATTRIBUTE_ALIGNED): Remove.
    * src/alloc.c (XMALLOC_BASE_ALIGNMENT, GC_POINTER_ALIGNMENT, pure_alloc):
    Simplify by using alignof.
    (pure_alloc) [! USE_LSB_TAG]: Don't over-align EMACS_INT values.
    * src/lisp.h: Include <stdalign.h>.
    (GCALIGNMENT): New macro and constant.
    (DECL_ALIGN): Remove.  All uses replaced by alignas (GCALIGNMENT).
    (USE_LSB_TAG): ifdef on alignas, not on DECL_ALIGN.
    (stdalign): New macro, if not already defined.
    e32a5799
lisp.h 125 KB