• Paul Eggert's avatar
    Make src headers idempotent and standalone · 55ba8c02
    Paul Eggert authored
    Redo src/*.h so that each include file is idempotent (that is, can
    be included multiple times with the latter inclusions having no
    effect) and standalone (that is, can be included by itself,
    with no include file other than config.h needed as a prerequisite).
    This is standard practice in GNU programs nowadays.
    * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
    * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
    * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
    * src/regex.h [emacs]:
    * src/syntax.h, src/systty.h, src/termhooks.h:
    Include lisp.h, for Lisp_Object.
    * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
    * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
    * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
    * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
    * src/termopts.h, src/tparam.h, src/unexec.h:
    Protect against multiple inclusion.
    * src/buffer.h: Include character.h, for STRING_CHAR.
    * src/emacsgtkfixed.h (struct frame):
    * src/fontset.h (struct face):
    * src/region-cache.h (struct buffer):
    * src/termhooks.h (struct glyph):
    * src/xsettings.h (struct x_display_info):
    Add possibly-forward decl.
    * src/syntax.h: Include buffer.h, for BVAR.
    * src/sysselect.h: Include lisp.h, for eassume.
    * src/termchar.h: Include <stdio.h>, for FILE.
    * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
    * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
    55ba8c02
charset.h 19 KB