1. 01 Jan, 2020 1 commit
  2. 01 Jan, 2019 1 commit
  3. 08 Aug, 2018 1 commit
    • Tom Tromey's avatar
      More macro renamings for bignum · d1ec3a0a
      Tom Tromey authored
      * src/alloc.c, src/bidi.c, src/buffer.c, src/buffer.h, src/bytecode.c,
      src/callint.c, src/callproc.c, src/casefiddle.c, src/casetab.c,
      src/category.c, src/ccl.c, src/character.c, src/character.h,
      src/charset.c, src/charset.h, src/chartab.c, src/cmds.c, src/coding.c,
      src/composite.c, src/composite.h, src/data.c, src/dbusbind.c,
      src/decompress.c, src/dired.c, src/dispextern.h, src/dispnew.c,
      src/disptab.h, src/doc.c, src/dosfns.c, src/editfns.c,
      src/emacs-module.c, src/emacs.c, src/eval.c, src/fileio.c,
      src/floatfns.c, src/fns.c, src/font.c, src/font.h, src/fontset.c,
      src/frame.c, src/frame.h, src/fringe.c, src/ftcrfont.c, src/ftfont.c,
      src/gfilenotify.c, src/gnutls.c, src/gtkutil.c, src/image.c,
      src/indent.c, src/insdel.c, src/intervals.c, src/json.c,
      src/keyboard.c, src/keymap.c, src/kqueue.c, src/lcms.c, src/lisp.h,
      src/lread.c, src/macros.c, src/marker.c, src/menu.c, src/minibuf.c,
      src/msdos.c, src/print.c, src/process.c, src/profiler.c, src/search.c,
      src/sound.c, src/syntax.c, src/syntax.h, src/sysdep.c, src/term.c,
      src/termhooks.h, src/textprop.c, src/undo.c, src/w32.c,
      src/w32console.c, src/w32fns.c, src/w32font.c, src/w32inevt.c,
      src/w32proc.c, src/w32select.c, src/w32term.c, src/w32term.h,
      src/w32uniscribe.c, src/window.c, src/xdisp.c, src/xfaces.c,
      src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c, src/xml.c,
      src/xrdb.c, src/xselect.c, src/xsettings.c, src/xterm.c, src/xwidget.c
      Rename XINT->XFIXNUM, XFASTINT->XFIXNAT, XUINT->XUFIXNUM.
      d1ec3a0a
  4. 13 Jul, 2018 1 commit
    • Tom Tromey's avatar
      Rename integerp->fixnum, etc, in preparation for bignums · 42fe787b
      Tom Tromey authored
      * src/json.c, src/keyboard.c, src/keyboard.h, src/keymap.c,
      src/kqueue.c, src/lcms.c, src/lisp.h, src/lread.c, src/macros.c,
      src/marker.c, src/menu.c, src/minibuf.c, src/msdos.c, src/print.c,
      src/process.c, src/profiler.c, src/search.c, src/sound.c,
      src/syntax.c, src/sysdep.c, src/term.c, src/terminal.c,
      src/textprop.c, src/undo.c, src/w16select.c, src/w32.c,
      src/w32console.c, src/w32cygwinx.c, src/w32fns.c, src/w32font.c,
      src/w32inevt.c, src/w32proc.c, src/w32select.c, src/w32term.c,
      src/w32uniscribe.c, src/widget.c, src/window.c, src/xdisp.c,
      src/xfaces.c, src/xfns.c, src/xfont.c, src/xftfont.c, src/xmenu.c,
      src/xrdb.c, src/xselect.c, src/xterm.c, src/xwidget.c: Rename
      INTEGERP->FIXNUM, make_number->make_fixnum, CHECK_NUMBER->CHECK_FIXNUM,
      make_natnum->make_fixed_natum, NUMBERP->FIXED_OR_FLOATP,
      NATNUMP->FIXNATP, CHECK_NATNUM->CHECK_FIXNAT.
      42fe787b
  5. 01 Jan, 2018 1 commit
  6. 13 Sep, 2017 1 commit
    • Paul Eggert's avatar
      Prefer HTTPS to FTP and HTTP in documentation · bc511a64
      Paul Eggert authored
      Most of this change is to boilerplate commentary such as license URLs.
      This change was prompted by ftp://ftp.gnu.org's going-away party,
      planned for November.  Change these FTP URLs to https://ftp.gnu.org
      instead.  Make similar changes for URLs to other organizations moving
      away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
      fsf.org when this works, as this will further help defend against
      man-in-the-middle attacks (for this part I omitted the MS-DOS and
      MS-Windows sources and the test tarballs to keep the workload down).
      HTTPS is not fully working to lists.gnu.org so I left those URLs alone
      for now.
      bc511a64
  7. 01 Jan, 2017 1 commit
  8. 10 Mar, 2016 1 commit
    • Paul Eggert's avatar
      Rework C source files to avoid ^( · 7352c6c6
      Paul Eggert authored
      Work around Bug#22884 by rewording comments and strings to avoid ‘(’
      at the start of a line unless it starts a function.  This change
      is a short-term hack; in the longer run we plan to fix cc-mode’s
      performance for C files that have ‘(’ at the start of a line in a
      comment or string.
      7352c6c6
  9. 01 Jan, 2016 1 commit
  10. 16 Oct, 2015 1 commit
    • 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
  11. 05 Jan, 2015 1 commit
    • Paul Eggert's avatar
      Compute C decls for DEFSYMs automatically · 58f2d6ef
      Paul Eggert authored
      Fixes Bug#15880.
      This patch also makes Q constants (e.g., Qnil) constant addresses
      from the C point of view.
      * make-docfile.c: Revamp to generate table of symbols, too.
      Include <stdbool.h>.
      (xstrdup): New function.
      (main): Don't process the same file twice.
      (SYMBOL): New constant in enum global_type.
      (struct symbol): Turn 'value' member into a union, either v.value
      for int or v.svalue for string.  All uses changed.
      (add_global): New arg svalue, which overrides value, so that globals
      can have a string value.
      (close_emacs_global): New arg num_symbols; all uses changed.
      Output lispsym decl.
      (write_globals): Output symbol globals too.  Output more
      ATTRIBUTE_CONST, now that Qnil etc. are C constants.
      Output defsym_name table.
      (scan_c_file): Move most of guts into ...
      (scan_c_stream): ... new function.  Scan for DEFSYMs and
      record symbols found.  Don't read past EOF if file doesn't
      end in newline.
      * alloc.c, bidi.c, buffer.c, bytecode.c, callint.c, casefiddle:
      * casetab.c, category.c, ccl.c, charset.c, chartab.c, cmds.c, coding.c:
      * composite.c, data.c, dbusbind.c, decompress.c, dired.c, dispnew.c:
      * doc.c, editfns.c, emacs.c, eval.c, fileio.c, fns.c, font.c, fontset.c:
      * frame.c, fringe.c, ftfont.c, ftxfont.c, gfilenotify.c, gnutls.c:
      * image.c, inotify.c, insdel.c, keyboard.c, keymap.c, lread.c:
      * macfont.m, macros.c, minibuf.c, nsfns.m, nsfont.m, nsimage.m:
      * nsmenu.m, nsselect.m, nsterm.m, print.c, process.c, profiler.c:
      * search.c, sound.c, syntax.c, term.c, terminal.c, textprop.c, undo.c:
      * window.c, xdisp.c, xfaces.c, xfns.c, xftfont.c, xmenu.c, xml.c:
      * xselect.c, xsettings.c, xterm.c:
      Remove Q vars that represent symbols (e.g., Qnil, Qt, Qemacs).
      These names are now defined automatically by make-docfile.
      * alloc.c (init_symbol): New function.
      (Fmake_symbol): Use it.
      (c_symbol_p): New function.
      (valid_lisp_object_p, purecopy): Use it.
      * alloc.c (marked_pinned_symbols):
      Use make_lisp_symbol instead of make_lisp_ptr.
      (garbage_collect_1): Mark lispsym symbols.
      (CHECK_ALLOCATED_AND_LIVE_SYMBOL): New macro.
      (mark_object): Use it.
      (sweep_symbols): Sweep lispsym symbols.
      (symbol_uses_obj): New function.
      (which_symbols): Use it.  Work for lispsym symbols, too.
      (init_alloc_once): Initialize Vpurify_flag here; no need to wait,
      since Qt's address is already known now.
      (syms_of_alloc): Add lispsym count to symbols_consed.
      * buffer.c (init_buffer_once): Compare to Qnil, not to make_number (0),
      when testing whether storage is all bits zero.
      * dispextern (struct image_type):
      * font.c (font_property_table):
      * frame.c (struct frame_parm_table, frame_parms):
      * keyboard.c (scroll_bar_parts, struct event_head):
      * xdisp.c (struct props):
      Use XSYMBOL_INIT (Qfoo) and struct Lisp_Symbol * rather than &Qfoo and
      Lisp_Object *, since Qfoo is no longer an object whose address can be
      taken.  All uses changed.
      * eval.c (run_hook): New function.  Most uses of Frun_hooks changed to
      use it, so that they no longer need to take the address of a Lisp sym.
      (syms_of_eval): Don't use DEFSYM on Vrun_hooks, as it's a variable.
      * frame.c (syms_of_frame): Add defsyms for the frame_parms table.
      * keyboard.c (syms_of_keyboard): Don't DEFSYM Qmenu_bar here.
      DEFSYM Qdeactivate_mark before the corresponding var.
      * keymap.c (syms_of_keymap): Use DEFSYM for Qmenu_bar and Qmode_line
      instead of interning their symbols; this avoids duplicates.
      (LISP_INITIALLY, TAG_PTR)
      (DEFINE_LISP_SYMBOL_BEGIN, DEFINE_LISP_SYMBOL_END, XSYMBOL_INIT):
      New macros.
      (LISP_INITIALLY_ZERO): Use it.
      (enum symbol_interned, enum symbol_redirect, struct Lisp_Symbol)
      (EXFUN, DEFUN_ARGS_MANY, DEFUN_ARGS_UNEVALLED, DEFUN_ARGS_*):
      Move decls up, to avoid forward uses.  Include globals.h earlier, too.
      (make_lisp_symbol): New function.
      (XSETSYMBOL): Use it.
      (DEFSYM): Now just a placeholder for make-docfile.
      * lread.c (DEFINE_SYMBOLS): Define, for globals.h.
      (intern_sym): New function, with body taken from old intern_driver.
      (intern_driver): Use it.  Last arg is now Lisp integer, not ptrdiff_t.
      All uses changed.
      (define_symbol): New function.
      (init_obarray): Define the C symbols taken from lispsym.
      Use plain DEFSYM for Qt and Qnil.
      * syntax.c (init_syntax_once): No need to worry about
      Qchar_table_extra_slots.
      58f2d6ef
  12. 01 Jan, 2015 2 commits
  13. 01 Jan, 2014 1 commit
  14. 14 Dec, 2013 1 commit
    • Paul Eggert's avatar
      Use bool for boolean, focusing on headers. · 96c06863
      Paul Eggert authored
      * configure.ac (PTY_OPEN, GC_MARK_SECONDARY_STACK):
      Use bool for boolean.
      * lib-src/emacsclient.c, lib-src/etags.c, lib-src/hexl.c (FALSE, TRUE):
      Remove.  All uses replaced with uncapitalized version.
      * lib-src/emacsclient.c (message):
      * lib-src/etags.c (make_tag, pfnote, consider_token, make_C_tag, lang_names):
      * lib-src/hexl.c (un_flag, iso_flag, endian):
      * lib-src/pop.c (pop_debug, pop_open, pop_multi_first, pop_multi_next)
      (pop_trash):
      Use bool for boolean.
      * lib-src/etags.c (bool): Remove.
      * lib-src/etags.c (globals, members, declarations, no_line_directive)
      (no_duplicates): Use 'int' for boolean values that getopt requires
      to be 'int'.  Formerly, these were 'bool' and 'bool' was 'int',
      but we can no longer rely on this implementation.
      * lib-src/pop.h (struct _popserver): Use bool_bf for boolean bit-fields.
      * lwlib/xlwmenuP.h (XlwMenu_part): Use bool_bf for boolean bit-fields.
      * src/atimer.h, src/lisp.h, src/syssignal.h, src/syswait.h, src/unexelf.c:
      No need to include <stdbool.h>, since conf_post.h does it now.
      * src/buffer.h (BUF_COMPUTE_UNCHANGED, DECODE_POSITION)
      (BUFFER_CHECK_INDIRECTION, GET_OVERLAYS_AT, PER_BUFFER_VALUE_P)
      (SET_PER_BUFFER_VALUE_P):
      * src/ccl.c, src/ccl.h (setup_ccl_program):
      * src/ccl.h (CHECK_CCL_PROGRAM):
      * src/character.h (MAKE_CHAR_UNIBYTE, CHECK_CHARACTER_CAR)
      (CHECK_CHARACTER_CDR, CHAR_STRING_ADVANCE, NEXT_CHAR_BOUNDARY)
      (PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE)
      (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
      (FETCH_STRING_CHAR_ADVANCE_NO_CHECK, FETCH_CHAR_ADVANCE)
      (FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, INC_BOTH)
      (DEC_BOTH, BUF_INC_POS, BUF_DEC_POS):
      * src/charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
      (CHECK_CHARSET_GET_ATTR, CHECK_CHARSET_GET_CHARSET)
      (CHARSET_FAST_MAP_SET):
      * src/coding.c (decode_coding_ccl, encode_coding_ccl):
      * src/coding.h (CHECK_CODING_SYSTEM, CHECK_CODING_SYSTEM_GET_SPEC)
      (CHECK_CODING_SYSTEM_GET_ID, SJIS_TO_JIS, SJIS_TO_JIS2)
      (JIS_TO_SJIS, JIS_TO_SJIS2, ENCODE_FILE, DECODE_FILE)
      (ENCODE_SYSTEM, DECODE_SYSTEM, ENCODE_UTF_8)
      (decode_coding_c_string):
      * src/composite.h (COMPOSITION_DECODE_REFS, COMPOSITION_DECODE_RULE):
      * src/conf_post.h (has_attribute):
      * src/dispextern.h (trace_redisplay_p):
      (INC_TEXT_POS, DEC_TEXT_POS, SET_GLYPH_FROM_GLYPH_CODE)
      (SET_CHAR_GLYPH, SET_CHAR_GLYPH_FROM_GLYPH)
      (SET_GLYPH_FROM_CHAR_GLYPH):
      (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P)
      (FACE_SUITABLE_FOR_ASCII_CHAR_P, FACE_SUITABLE_FOR_CHAR_P)
      (PRODUCE_GLYPHS, reset_mouse_highlight, in_display_vector_p)
      (cursor_in_mouse_face_p):
      * src/dispnew.c (adjust_glyph_matrix, clear_glyph_matrix_rows)
      (blank_row, prepare_desired_row)
      (build_frame_matrix_from_leaf_window, make_current)
      (mirror_make_current, mirrored_line_dance, mirror_line_dance)
      (update_window, scrolling_window, update_frame_line):
      * src/disptab.h (GLYPH_FOLLOW_ALIASES):
      * src/editfns.c (Fformat):
      * src/font.h (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC)
      (FONT_WIDTH_SYMBOLIC, FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE)
      (FONT_WIDTH_FOR_FACE, FONT_WEIGHT_NAME_NUMERIC)
      (FONT_SLANT_NAME_NUMERIC, FONT_WIDTH_NAME_NUMERIC)
      (FONT_SET_STYLE, CHECK_FONT, CHECK_FONT_SPEC, CHECK_FONT_ENTITY)
      (CHECK_FONT_OBJECT, CHECK_FONT_GET_OBJECT, FONT_ADD_LOG)
      (FONT_DEFERRED_LOG):
      * src/frame.h (FRAME_W32_P, FRAME_MSDOS_P, FRAME_WINDOW_P):
      (FRAME_EXTERNAL_TOOL_BAR, FRAME_EXTERNAL_MENU_BAR, FOR_EACH_FRAME)
      (FRAME_MOUSE_UPDATE):
      * src/fringe.c (Fdefine_fringe_bitmap):
      * src/image.c (x_create_bitmap_from_data, x_create_bitmap_mask)
      (x_create_bitmap_from_xpm_data, xpm_load_image):
      * src/intervals.h (INTERVAL_HAS_PARENT, INTERVAL_PARENT)
      (set_interval_parent, RESET_INTERVAL, COPY_INTERVAL_CACHE)
      (MERGE_INTERVAL_CACHE):
      * src/keymap.h (KEYMAPP):
      * src/lisp.h (eassert, USE_LSB_TAG, CHECK_LISP_OBJECT_TYPE)
      (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE, DEFSYM, PSEUDOVECTORP)
      (CHECK_RANGED_INTEGER, CHECK_TYPE_RANGED_INTEGER)
      (CHECK_NUMBER_COERCE_MARKER, CHECK_NUMBER_OR_FLOAT_COERCE_MARKER)
      (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
      (DEFVAR_BUFFER_DEFAULTS, DEFVAR_KBOARD, QUIT)
      (RETURN_UNGCPRO, USE_SAFE_ALLOCA, SAFE_NALLOCA, SAFE_FREE)
      (SAFE_ALLOCA_LISP, FOR_EACH_ALIST_VALUE, functionp):
      * src/syntax.h (SYNTAX_ENTRY, SYNTAX_WITH_FLAGS, SYNTAX)
      (UPDATE_SYNTAX_TABLE_FORWARD, UPDATE_SYNTAX_TABLE_BACKWARD)
      (SETUP_BUFFER_SYNTAX_TABLE):
      * src/systime.h (timespec_valid_p):
      * src/term.c (save_and_enable_current_matrix):
      * src/window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P):
      * src/xdisp.c (in_display_vector_p, display_tool_bar_line)
      (redisplay_internal, try_window_reusing_current_matrix)
      (sync_frame_with_window_matrix_rows, try_window_id)
      (display_menu_bar, display_tty_menu_item, display_mode_line)
      (coords_in_mouse_face_p, cursor_in_mouse_face_p):
      * src/xmenu.c (xmenu_show):
      * src/xterm.c (use_xim, x_term_init):
      * src/xterm.h (XSync, GTK_CHECK_VERSION, use_xim, SET_SCROLL_BAR_X_WIDGET)
      (struct x_bitmap_record):
      Use bool for booleans.
      * src/ccl.c (struct buffer_text):
      * src/ccl.h (struct ccl_program):
      * src/charset.h (struct charset):
      * src/cm.h (struct cm):
      * src/coding.h (struct iso_2022_spec, struct coding_system):
      * src/dispextern.h (struct glyph, struct glyph_matrix, struct glyph_row)
      (struct glyph_string, struct face, struct face_cache)
      (struct bidi_string_data, struct bidi_it)
      (struct draw_fringe_bitmap_params, struct it, Mouse_HLInfo)
      (struct image):
      * src/editfns.c (Fformat):
      * src/frame.h (struct frame):
      * src/fringe.c (struct fringe_bitmap):
      * src/intervals.h (struct interval):
      * src/keyboard.h (struct kboard):
      * src/lisp.h (struct Lisp_Symbol, struct Lisp_Misc_Any, struct Lisp_Marker)
      (struct Lisp_Overlay, struct Lisp_Save_Value, struct Lisp_Free)
      (struct Lisp_Buffer_Local_Value, union specbinding):
      * src/macfont.m (struct macfont_info):
      * src/process.h (struct Lisp_Process):
      * src/termchar.h (struct tty_display_info):
      * src/window.h (struct window):
      * src/xterm.h (struct x_output):
      Use bool_bf for boolean bit-fields.
      * src/ccl.c (setup_ccl_program): Now returns bool instead of -1 or 0.
      All callers changed.
      * src/ccl.h (struct ccl_program): Remove unused members private_state,
      src_multibyte, dst_multibyte, cr_consumed, suppress_error,
      eight_bit_control.
      (struct ccl_spec): Remove unused members cr_carryover,
      eight_bit_carryover.
      * src/conf_post.h: Include <stdbool.h>.
      (bool_bf): New type.
      * src/dispextern.h (TRACE, PREPARE_FACE_FOR_DISPLAY):
      * src/interval.h (RESET_INTERVAL, COPY_INTERVAL_CACHE, MERGE_INTERVAL_CACHE)
      Surround statement macro with proper 'do { ... } while (false)' brackets.
      (SET_MATRIX_ROW_ENABLED_P): Assume 2nd arg is bool.
      (PRODUCE_GLYPHS): Simplify use of boolean.
      * src/fileio.c (Fcopy_file):
      If I is an integer, prefer 'if (I != 0)' to 'if (I)'.
      * src/lisp.h (UNGCPRO): Return void, not int.
      (FOR_EACH_TAIL): Use void expression, not int expression.
      * src/region-cache.c: Reindent.
      * src/region-cache.h: Copy comments from region-cache.c, to fix
      incorrect remarks about booleans.
      96c06863
  15. 04 Nov, 2013 1 commit
    • Paul Eggert's avatar
      Port to stricter C99 platforms. · 91f2d272
      Paul Eggert authored
      Especially, C99 prohibits nesting a struct X inside struct Y if
      struct X has a flexible array member.
      Also, merge from gnulib, incorporating:
      2013-11-03 intprops: port to Oracle Studio c99
      * lib/intprops.h: Update from gnulib.
      * src/alloc.c (struct sdata): New type.
      (sdata): Implement in terms of struct sdata.
      Remove u member; all uses replaced by next_vector, set_next_vector.
      (SDATA_SELECTOR, SDATA_DATA, SDATA_DATA_OFFSET): Adjust to sdata change.
      (SDATA_DATA_OFFSET): Now a constant, not a macro.
      (struct sblock): Rename first_data member to data, which is now
      a flexible array member.  All uses changed.
      (next_vector, set_next_vector, large_vector_vec): New functions.
      (vector_alignment): New constant.
      (roundup_size): Make it a multiple of ALIGNOF_STRUCT_LISP_VECTOR, too.
      (struct large-vector): Now merely a NEXT member, since the old approach
      ran afoul of stricter C99.  All uses changed to use
      large_vector_vec or large_vector_offset.
      (large_vector_offset): New constant.
      * src/dispnew.c: Include tparam.h, for tgetent.
      Do not include term.h; no longer needed.
      * src/gnutls.c (Fgnutls_boot): Don't continue after calling a _Noreturn.
      * src/lisp.h (ENUM_BF) [__SUNPRO_C && __STDC__]: Use unsigned int.
      (struct Lisp_Vector): Use a flexible array member for contents,
      instead of a union with a member that is an array of size 1.
      All uses changed.
      (ALIGNOF_STRUCT_LISP_VECTOR): New constant, to make up for the
      fact that the struct no longer contains a union.
      (struct Lisp_Misc_Any, struct Lisp_Marker, struct Lisp_Overlay)
      (struct Lisp_Save_Value, struct Lisp_Free):
      Use unsigned, not int, for spacers, to avoid c99 warning.
      (union specbinding): Use unsigned, not bool, for bitfield, as
      bool is not portable to pre-C99 hosts.
      91f2d272
  16. 24 Sep, 2013 1 commit
    • Dmitry Antipov's avatar
      Use union for the payload of struct Lisp_Vector. · d6d9cbc1
      Dmitry Antipov authored
      This helps to avoid a few glitches dictated by C's aliasing rules.
      * lisp.h (struct Lisp_Vector): Use union for next and
      contents member.  Adjust comment.  Change related users.
      * alloc.c (next_in_free_list, set_next_in_free_list): Remove.
      Related users changed.
      * buffer.c, bytecode.c, ccl.c, character.h, chartab.c, composite.c:
      * composite.h, disptab.h, fns.c, fontset.c, indent.c, keyboard.c:
      * lread.c, msdos.c, process.c, w32menu.c, window.c, xdisp.c:
      * xfaces.c, xfont.c, xmenu.c: Related users changed.
      d6d9cbc1
  17. 01 Jan, 2013 1 commit
  18. 11 Jan, 2012 1 commit
  19. 05 Jan, 2012 1 commit
  20. 09 May, 2011 1 commit
    • Eli Zaretskii's avatar
      Backport revisions... · 14fe7b53
      Eli Zaretskii authored
      Backport revisions 2011-04-24T05:30:24Z!eggert@cs.ucla.edu..2011-04-25T19:40:22Z!eggert@cs.ucla.edu (inclusive) from trunk (bug#8623)
      
      	The next log entry shows the actual changes by Paul Eggert.
      
       Fix a problem with aliasing and vector headers.
       GCC 4.6.0 optimizes based on type-based alias analysis.  For
       example, if b is of type struct buffer * and v of type struct
       Lisp_Vector *, then gcc -O2 was incorrectly assuming that &b->size
       != &v->size, and therefore "v->size = 1; b->size = 2; return
       v->size;" must therefore return 1.  This assumption is incorrect
       for Emacs, since it type-puns struct Lisp_Vector * with many other
       types.  To fix this problem, this patch adds a new type struct
       vector_header that documents the constraints on layout of vectors
       and pseudovectors, and helps optimizing compilers not get fooled
       by Emacs's type punning.  It also adds the macros XSETTYPED_PVECTYPE
       XSETTYPED_PSEUDOVECTOR, TYPED_PSEUDOVECTORP, for similar reasons.
       src/lisp.h (XVECTOR_SIZE): New convenience macro.  All previous uses of
       XVECTOR (foo)->size replaced to use this macro, to avoid the hassle
       of writing XVECTOR (foo)->header.size.
       src/lisp.h: Say "vectorlike header" rather than "vector header.
       (struct vectorlike_header): Rename from struct vector_header.
       (XVECTORLIKE_HEADER_SIZE): Renamed from XVECTOR_HEADER_SIZE.
       All uses changed.
       (XVECTOR_HEADER_SIZE): New macro, for use in XSETPSEUDOVECTOR.
       (XSETTYPED_PVECTYPE): New macro, specifying the name of the size
       member.
       (XSETPVECTYPE): Rewrite in terms of new macro.
       (XSETPVECTYPESIZE): New macro, specifying both type and size.
       This is a bit clearer, and further avoids the possibility of
       undesirable aliasing.
       (XSETTYPED_PSEUDOVECTOR): New macro, specifying the size.
       (XSETPSEUDOVECTOR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR
       and XVECTOR_HEADER_SIZE.
       (XSETSUBR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR and XSIZE,
       since Lisp_Subr is a special case (no "next" field).
       (ASIZE): Rewrite in terms of XVECTOR_SIZE.
       (struct vector_header): New type.
       (TYPED_PSEUDOVECTORP): New macro, also specifying the C type of the
       object, to help avoid aliasing.
       (PSEUDOVECTORP): Rewrite in terms of TYPED_PSEUDOVECTORP.
       (SUBRP): Likewise, since Lisp_Subr is a special case.
       src/lisp.h (struct Lisp_Vector, struct Lisp_Char_Table):
       (struct Lisp_Sub_Char_Table, struct Lisp_Bool_Vector):
       (struct Lisp_Hash_Table): Combine first two members into a single
       struct vector_header member.  All uses of "size" and "next" members
       changed to be "header.size" and "header.next".
       src/buffer.h (struct buffer): Likewise.
       src/font.h (struct font_spec, struct font_entity, struct font): Likewise.
       src/frame.h (struct frame): Likewise.
       src/process.h (struct Lisp_Process): Likewise.
       src/termhooks.h (struct terminal): Likewise.
       src/window.c (struct save_window_data, struct saved_window): Likewise.
       src/window.h (struct window): Likewise.
       src/alloc.c (allocate_buffer, Fmake_bool_vector, allocate_pseudovector):
       Use XSETPVECTYPESIZE, not XSETPVECTYPE, to avoid aliasing problems.
       src/buffer.c (init_buffer_once): Likewise.
       src/lread.c (defsubr): Use XSETTYPED_PVECTYPE, since Lisp_Subr is a
       special case.
       src/process.c (Fformat_network_address): Use local var for size,
       for brevity.
       src/fns.c (vector): Remove; this old hack is no longer needed.
       src/bytecode.c (exec_byte_code): Don't use XVECTOR before CHECK_VECTOR.
      14fe7b53
  21. 25 Apr, 2011 2 commits
    • Paul Eggert's avatar
      * lisp.h: (XVECTOR_SIZE): Remove. All uses replaced with ASIZE. · 77b37c05
      Paul Eggert authored
      (ASIZE): Now contains previous implementation of XVECTOR_SIZE
      instead of invoking XVECTOR_SIZE.
      77b37c05
    • Paul Eggert's avatar
      lisp.h: Fix a problem with aliasing and vector headers. · eab3844f
      Paul Eggert authored
      GCC 4.6.0 optimizes based on type-based alias analysis.  For
      example, if b is of type struct buffer * and v of type struct
      Lisp_Vector *, then gcc -O2 was incorrectly assuming that &b->size
      != &v->size, and therefore "v->size = 1; b->size = 2; return
      v->size;" must therefore return 1.  This assumption is incorrect
      for Emacs, since it type-puns struct Lisp_Vector * with many other
      types.  To fix this problem, this patch adds a new type struct
      vector_header that documents the constraints on layout of vectors
      and pseudovectors, and helps optimizing compilers not get fooled
      by Emacs's type punning.  It also adds the macros XSETTYPED_PVECTYPE
      XSETTYPED_PSEUDOVECTOR, TYPED_PSEUDOVECTORP, for similar reasons.
      * lisp.h (XVECTOR_SIZE): New convenience macro.  All previous uses of
      XVECTOR (foo)->size replaced to use this macro, to avoid the hassle
      of writing XVECTOR (foo)->header.size.
      (XVECTOR_HEADER_SIZE): New macro, for use in XSETPSEUDOVECTOR.
      (XSETTYPED_PVECTYPE): New macro, specifying the name of the size
      member.
      (XSETPVECTYPE): Rewrite in terms of new macro.
      (XSETPVECTYPESIZE): New macro, specifying both type and size.
      This is a bit clearer, and further avoids the possibility of
      undesirable aliasing.
      (XSETTYPED_PSEUDOVECTOR): New macro, specifying the size.
      (XSETPSEUDOVECTOR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR
      and XVECTOR_HEADER_SIZE.
      (XSETSUBR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR and XSIZE,
      since Lisp_Subr is a special case (no "next" field).
      (ASIZE): Rewrite in terms of XVECTOR_SIZE.
      (struct vector_header): New type.
      (TYPED_PSEUDOVECTORP): New macro, also specifying the C type of the
      object, to help avoid aliasing.
      (PSEUDOVECTORP): Rewrite in terms of TYPED_PSEUDOVECTORP.
      (SUBRP): Likewise, since Lisp_Subr is a special case.
      * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table):
      (struct Lisp_Sub_Char_Table, struct Lisp_Bool_Vector):
      (struct Lisp_Hash_Table): Combine first two members into a single
      struct vector_header member.  All uses of "size" and "next" members
      changed to be "header.size" and "header.next".
      * buffer.h (struct buffer): Likewise.
      * font.h (struct font_spec, struct font_entity, struct font): Likewise.
      * frame.h (struct frame): Likewise.
      * process.h (struct Lisp_Process): Likewise.
      * termhooks.h (struct terminal): Likewise.
      * window.c (struct save_window_data, struct saved_window): Likewise.
      * window.h (struct window): Likewise.
      * alloc.c (allocate_buffer, Fmake_bool_vector, allocate_pseudovector):
      Use XSETPVECTYPESIZE, not XSETPVECTYPE, to avoid aliasing problems.
      * buffer.c (init_buffer_once): Likewise.
      * lread.c (defsubr): Use XSETTYPED_PVECTYPE, since Lisp_Subr is a
      special case.
      * process.c (Fformat_network_address): Use local var for size,
      for brevity.
      eab3844f
  22. 25 Jan, 2011 1 commit
  23. 18 Jan, 2011 1 commit
    • Tom Tromey's avatar
      Move all DEFVAR'd globals into a structure -- threading infrastructure · 29208e82
      Tom Tromey authored
      	* globals.h: New file.
      	* xterm.h (Vx_pixel_size_width_font_regexp): Remove declaration.
      	* window.h (Vinitial_window_system, Vminibuf_scroll_window)
      	(Vwindow_system_version): Remove declaration.
      	* w32term.h (Vw32_enable_palette)
      	(Vx_pixel_size_width_font_regexp): Remove declaration.
      	* w32menu.c (Voverriding_local_map)
      	(Voverriding_local_map_menu_flag): Remove declaration.
      	* w32inevt.c (Vw32_alt_is_meta, Vw32_apps_modifier)
      	(Vw32_capslock_is_shiftlock, Vw32_enable_caps_lock)
      	(Vw32_enable_num_lock, Vw32_lwindow_modifier)
      	(Vw32_pass_lwindow_to_system, Vw32_pass_rwindow_to_system)
      	(Vw32_phantom_key_code, Vw32_recognize_altgr)
      	(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
      	(w32_use_full_screen_buffer): Remove declaration.
      	* w32.c (Vsystem_configuration, Vw32_downcase_file_names)
      	(Vw32_generate_fake_inodes, Vw32_get_true_file_attributes)
      	(w32_num_mouse_buttons, w32_pipe_read_delay): Remove declaration.
      	* termopts.h (Vtruncate_partial_width_windows, inverse_video)
      	(no_redraw_on_reenter, visible_bell): Remove declaration.
      	* sysdep.c (Vsystem_name): Remove declaration.
      	* syntax.h (parse_sexp_lookup_properties): Remove declaration.
      	* menu.h (Vmenu_updating_frame): Remove declaration.
      	* macros.h (Vexecuting_kbd_macro, executing_kbd_macro_index):
      	Remove declaration.
      	* lisp.h (Vafter_init_time, Vafter_load_alist)
      	(Vauto_save_list_file_name, Vbefore_init_time, Vcommand_history)
      	(Vcompletion_regexp_list, Vcurrent_load_list)
      	(Vcurrent_prefix_arg, Vdata_directory, Vdebug_on_error)
      	(Vdoc_directory, Vdoc_file_name, Vdynamic_library_alist)
      	(Vexec_directory, Vexec_path, Vexec_suffixes)
      	(Vface_font_rescale_alist, Vface_ignored_fonts, Vfeatures)
      	(Vhelp_form, Vhistory_length, Vinhibit_field_text_motion)
      	(Vinhibit_quit, Vinhibit_read_only, Vinhibit_redisplay)
      	(Vinstallation_directory, Vinvocation_directory)
      	(Vinvocation_name, Vload_file_rep_suffixes, Vload_history)
      	(Vload_suffixes, Vmark_even_if_inactive, Vmemory_full)
      	(Vmessage_log_max, Vobarray, Vprint_length, Vprint_level)
      	(Vpurify_flag, Vquit_flag, Vsaved_region_selection)
      	(Vscalable_fonts_allowed, Vselect_active_regions)
      	(Vshell_file_name, Vstandard_input, Vstandard_output)
      	(Vsystem_name, Vtemporary_file_directory, Vthrow_on_input)
      	(Vtop_level, Vtty_erase_char, Vundo_outer_limit)
      	(Vuser_login_name, Vwindow_scroll_functions)
      	(Vwindow_system_version, Vx_no_window_manager)
      	(Vx_resource_class, Vx_resource_name, baud_rate)
      	(completion_ignore_case, debug_on_next_call, gc_cons_threshold)
      	(history_delete_duplicates, inhibit_x_resources)
      	(last_nonmenu_event, load_in_progress, max_specpdl_size)
      	(minibuffer_auto_raise, print_escape_newlines, scroll_margin)
      	(use_dialog_box, use_file_dialog): Remove declaration.  Include
      	globals.h.
      	* keymap.h (Voverriding_local_map)
      	(Voverriding_local_map_menu_flag, meta_prefix_char): Remove
      	declaration.
      	* keyboard.h (Vdouble_click_time, Vfunction_key_map)
      	(Vinput_method_function, Vkey_translation_map)
      	(Vlucid_menu_bar_dirty_flag, Vthis_original_command)
      	(do_mouse_tracking, extra_keyboard_modifiers)
      	(num_nonmacro_input_events): Remove declaration.
      	* intervals.h (Vchar_property_alias_alist)
      	(Vdefault_text_properties, Vinhibit_point_motion_hooks)
      	(Vtext_property_default_nonsticky): Remove declaration.
      	* gtkutil.h (x_gtk_file_dialog_help_text)
      	(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
      	(x_gtk_whole_detached_tool_bar): Remove declaration.
      	* frame.h (Vdefault_frame_alist, Vframe_alpha_lower_limit)
      	(Vmenu_bar_mode, Vmouse_highlight, Vterminal_frame)
      	(Vtool_bar_mode, Vx_resource_class, Vx_resource_name)
      	(focus_follows_mouse): Remove declaration.
      	* fontset.h (Valternate_fontname_alist, Vfontset_alias_alist)
      	(Vignore_relative_composition, Votf_script_alist)
      	(Vuse_default_ascent, Vvertical_centering_font_regexp): Remove
      	declaration.
      	* font.h (Vfont_log): Remove declaration.
      	* dosfns.h (Vdos_display_scancodes, Vdos_version)
      	(Vdos_windows_version, dos_codepage, dos_country_code)
      	(dos_decimal_point, dos_hyper_key, dos_keyboard_layout)
      	(dos_keypad_mode, dos_super_key, dos_timezone_offset): Remove
      	declaration.
      	* disptab.h (Vglyph_table, Vstandard_display_table): Remove
      	declaration.
      	* dispextern.h (Vface_remapping_alist, Vglyphless_char_display)
      	(Vmouse_autoselect_window, Voverflow_newline_into_fringe)
      	(Vshow_trailing_whitespace, Vtool_bar_button_margin)
      	(Vtool_bar_style, cursor_in_echo_area, display_hourglass_p)
      	(inverse_video, mode_line_in_non_selected_windows)
      	(tool_bar_button_relief, tool_bar_max_label_size)
      	(underline_minimum_offset)
      	(unibyte_display_via_language_environment, x_stretch_cursor_p):
      	Remove declaration.
      	* composite.h (Vauto_composition_function)
      	(Vcomposition_function_table): Remove declaration.
      	* commands.h (Vexecuting_kbd_macro)
      	(Vminibuffer_local_completion_map)
      	(Vminibuffer_local_filename_completion_map)
      	(Vminibuffer_local_filename_must_match_map)
      	(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
      	(Vminibuffer_local_ns_map, Vthis_command)
      	(Vunread_command_events, cursor_in_echo_area)
      	(last_command_event, last_nonmenu_event, unread_command_char):
      	Remove declaration.
      	* coding.h (Vcoding_system_for_read, Vcoding_system_for_write)
      	(Vdefault_file_name_coding_system)
      	(Vdefault_process_coding_system, Vfile_name_coding_system)
      	(Vlast_coding_system_used, Vlocale_coding_system)
      	(Vselect_safe_coding_system_function)
      	(Vtranslation_table_for_input, coding_system_require_warning)
      	(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
      	(eol_mnemonic_unix, inherit_process_coding_system): Remove
      	declaration.
      	* charset.h (Vcharset_list, Vcurrent_iso639_language): Remove
      	declaration.
      	* character.h (Vauto_fill_chars, Vchar_direction_table)
      	(Vchar_script_table, Vchar_width_table, Vprintable_chars)
      	(Vscript_representative_chars, Vtranslation_table_vector)
      	(Vunicode_category_table): Remove declaration.
      	* ccl.h (Vfont_ccl_encoder_alist): Remove declaration.
      	* buffer.h (Vafter_change_functions, Vbefore_change_functions)
      	(Vdeactivate_mark, Vfirst_change_hook, Vtransient_mark_mode)
      	(inhibit_modification_hooks): Remove declaration.
      	* xterm.c (syms_of_xterm): Update.
      	(Vx_alt_keysym, Vx_hyper_keysym, Vx_keysym_table)
      	(Vx_meta_keysym, Vx_super_keysym, Vx_toolkit_scroll_bars)
      	(x_mouse_click_focus_ignore_position)
      	(x_underline_at_descent_line)
      	(x_use_underline_position_properties): Remove.
      	* xsmfns.c (syms_of_xsmfns): Update.
      	(Vx_session_id, Vx_session_previous_id): Remove.
      	* xsettings.c (syms_of_xsettings): Update.
      	(Vxft_settings, use_system_font): Remove.
      	* xselect.c (syms_of_xselect): Update.
      	(Vselection_converter_alist, Vx_lost_selection_functions)
      	(Vx_sent_selection_functions, x_selection_timeout): Remove.
      	* xfns.c (syms_of_xfns): Update.
      	(Vgtk_version_string, Vmotif_version_string)
      	(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
      	(Vx_max_tooltip_size, Vx_mode_pointer_shape)
      	(Vx_no_window_manager, Vx_nontext_pointer_shape)
      	(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
      	(Vx_sensitive_text_pointer_shape)
      	(Vx_window_horizontal_drag_shape, x_gtk_file_dialog_help_text)
      	(x_gtk_show_hidden_files, x_gtk_use_old_file_dialog)
      	(x_gtk_use_system_tooltips, x_gtk_whole_detached_tool_bar):
      	Remove.
      	* xfaces.c (syms_of_xfaces): Update.
      	(Vface_default_stipple, Vface_font_rescale_alist)
      	(Vface_ignored_fonts, Vface_new_frame_defaults)
      	(Vface_remapping_alist, Vfont_list_limit)
      	(Vscalable_fonts_allowed, Vtty_defined_color_alist): Remove.
      	* xdisp.c (syms_of_xdisp): Update.
      	(Vauto_resize_tool_bars, Vblink_cursor_alist)
      	(Vdisplay_pixels_per_inch, Vfontification_functions)
      	(Vframe_title_format, Vglobal_mode_string)
      	(Vglyphless_char_display, Vhourglass_delay, Vhscroll_step)
      	(Vicon_title_format, Vinhibit_redisplay)
      	(Vline_number_display_limit, Vline_prefix)
      	(Vmax_mini_window_height, Vmenu_bar_update_hook)
      	(Vmenu_updating_frame, Vmessage_log_max)
      	(Vmouse_autoselect_window, Vnobreak_char_display)
      	(Voverlay_arrow_position, Voverlay_arrow_string)
      	(Voverlay_arrow_variable_list, Vredisplay_end_trigger_functions)
      	(Vresize_mini_windows, Vshow_trailing_whitespace)
      	(Vtool_bar_border, Vtool_bar_button_margin, Vtool_bar_style)
      	(Vtruncate_partial_width_windows, Vvoid_text_area_pointer)
      	(Vwindow_scroll_functions, Vwindow_size_change_functions)
      	(Vwindow_text_change_functions, Vwrap_prefix)
      	(auto_raise_tool_bar_buttons_p, automatic_hscrolling_p)
      	(debug_end_pos, display_hourglass_p, emacs_scroll_step)
      	(highlight_nonselected_windows, hscroll_margin)
      	(inhibit_eval_during_redisplay, inhibit_free_realized_faces)
      	(inhibit_menubar_update, inhibit_try_cursor_movement)
      	(inhibit_try_window_id, inhibit_try_window_reusing)
      	(line_number_display_limit_width)
      	(make_cursor_line_fully_visible_p, message_truncate_lines)
      	(mode_line_inverse_video, multiple_frames, overline_margin)
      	(scroll_conservatively, scroll_margin, tool_bar_button_relief)
      	(tool_bar_max_label_size, underline_minimum_offset)
      	(unibyte_display_via_language_environment, x_stretch_cursor_p):
      	Remove.
      	* window.c (syms_of_window): Update.
      	(Vminibuf_scroll_window, Vother_window_scroll_buffer)
      	(Vrecenter_redisplay, Vscroll_preserve_screen_position)
      	(Vtemp_buffer_show_function, Vwindow_configuration_change_hook)
      	(Vwindow_point_insertion_type, auto_window_vscroll_p)
      	(mode_line_in_non_selected_windows, next_screen_context_lines)
      	(window_min_height, window_min_width): Remove.
      	(scroll_margin): Remove declaration.
      	* w32term.c (syms_of_w32term): Update.
      	(Vw32_capslock_is_shiftlock, Vw32_grab_focus_on_raise)
      	(Vw32_recognize_altgr, Vw32_swap_mouse_buttons)
      	(Vx_toolkit_scroll_bars, w32_num_mouse_buttons)
      	(w32_use_visible_system_caret, x_underline_at_descent_line)
      	(x_use_underline_position_properties): Remove.
      	(Vcommand_line_args, Vsystem_name, extra_keyboard_modifiers):
      	Remove declaration.
      	* w32select.c (syms_of_w32select): Update.
      	(Vnext_selection_coding_system, Vselection_coding_system): Remove.
      	* w32proc.c (syms_of_ntproc): Update.
      	(Vw32_downcase_file_names, Vw32_generate_fake_inodes)
      	(Vw32_get_true_file_attributes, Vw32_quote_process_args)
      	(Vw32_start_process_inherit_error_mode)
      	(Vw32_start_process_share_console)
      	(Vw32_start_process_show_window, w32_pipe_read_delay): Remove.
      	(Vsystem_name): Remove declaration.
      	* w32font.c (syms_of_w32font): Update.
      	(Vw32_charset_info_alist): Remove.
      	* w32fns.c (globals_of_w32fns, syms_of_w32fns): Update.
      	(Vw32_alt_is_meta, Vw32_apps_modifier, Vw32_bdf_filename_alist)
      	(Vw32_color_map, Vw32_enable_caps_lock, Vw32_enable_num_lock)
      	(Vw32_enable_palette, Vw32_lwindow_modifier)
      	(Vw32_pass_alt_to_system, Vw32_pass_lwindow_to_system)
      	(Vw32_pass_rwindow_to_system, Vw32_phantom_key_code)
      	(Vw32_rwindow_modifier, Vw32_scroll_lock_modifier)
      	(Vx_cursor_fore_pixel, Vx_hourglass_pointer_shape)
      	(Vx_max_tooltip_size, Vx_mode_pointer_shape)
      	(Vx_no_window_manager, Vx_nontext_pointer_shape)
      	(Vx_pixel_size_width_font_regexp, Vx_pointer_shape)
      	(Vx_sensitive_text_pointer_shape)
      	(Vx_window_horizontal_drag_shape, w32_ansi_code_page)
      	(w32_enable_synthesized_fonts, w32_mouse_button_tolerance)
      	(w32_mouse_move_interval)
      	(w32_pass_extra_mouse_buttons_to_system)
      	(w32_pass_multimedia_buttons_to_system, w32_quit_key)
      	(w32_strict_fontnames, w32_strict_painting): Remove.
      	(Vhourglass_delay, Vmenu_bar_mode, Vtool_bar_mode)
      	(Vw32_recognize_altgr, Vwindow_system_version)
      	(w32_num_mouse_buttons, w32_use_visible_system_caret): Remove
      	declaration.
      	* w32console.c (syms_of_ntterm): Update.
      	(w32_use_full_screen_buffer): Remove.
      	(Vtty_defined_color_alist): Remove declaration.
      	* w16select.c (syms_of_win16select): Update.
      	(Vnext_selection_coding_system, Vselection_coding_system): Remove.
      	* undo.c (syms_of_undo): Update.
      	(Vundo_outer_limit, Vundo_outer_limit_function)
      	(undo_inhibit_record_point, undo_limit, undo_strong_limit):
      	Remove.
      	* textprop.c (syms_of_textprop): Update.
      	(Vchar_property_alias_alist, Vdefault_text_properties)
      	(Vinhibit_point_motion_hooks, Vtext_property_default_nonsticky):
      	Remove.
      	* terminal.c (syms_of_terminal): Update.
      	(Vdelete_terminal_functions, Vring_bell_function): Remove.
      	* term.c (syms_of_term): Update.
      	(Vresume_tty_functions, Vsuspend_tty_functions)
      	(no_redraw_on_reenter, system_uses_terminfo, visible_cursor):
      	Remove.
      	* syntax.c (syms_of_syntax): Update.
      	(Vfind_word_boundary_function_table, multibyte_syntax_as_symbol)
      	(open_paren_in_column_0_is_defun_start)
      	(parse_sexp_ignore_comments, parse_sexp_lookup_properties)
      	(words_include_escapes): Remove.
      	* search.c (syms_of_search): Update.
      	(Vinhibit_changing_match_data, Vsearch_spaces_regexp): Remove.
      	* process.c (syms_of_process): Update.
      	(Vprocess_adaptive_read_buffering, Vprocess_connection_type)
      	(delete_exited_processes): Remove.
      	* print.c (syms_of_print): Update.
      	(Vfloat_output_format, Vprint_charset_text_property)
      	(Vprint_circle, Vprint_continuous_numbering, Vprint_gensym)
      	(Vprint_length, Vprint_level, Vprint_number_table)
      	(Vstandard_output, print_escape_multibyte)
      	(print_escape_newlines, print_escape_nonascii, print_quoted):
      	Remove.
      	* msdos.c (syms_of_msdos): Update.
      	(Vdos_unsupported_char_glyph): Remove.
      	(unibyte_display_via_language_environment): Remove declaration.
      	* minibuf.c (syms_of_minibuf): Update.
      	(Vcompletion_regexp_list, Vhistory_add_new_input)
      	(Vhistory_length, Vminibuffer_completing_file_name)
      	(Vminibuffer_completion_confirm)
      	(Vminibuffer_completion_predicate, Vminibuffer_completion_table)
      	(Vminibuffer_exit_hook, Vminibuffer_help_form)
      	(Vminibuffer_history_position, Vminibuffer_history_variable)
      	(Vminibuffer_prompt_properties, Vminibuffer_setup_hook)
      	(Vread_buffer_function, Vread_expression_map)
      	(completion_ignore_case, enable_recursive_minibuffers)
      	(history_delete_duplicates, minibuffer_allow_text_properties)
      	(minibuffer_auto_raise, read_buffer_completion_ignore_case):
      	Remove.
      	* marker.c (syms_of_marker): Update.
      	(byte_debug_flag): Remove.
      	* macros.c (syms_of_macros): Update.
      	(Vexecuting_kbd_macro, executing_kbd_macro_index): Remove.
      	* lread.c (syms_of_lread): Update.
      	(Vafter_load_alist, Vbyte_boolean_vars)
      	(Vbytecomp_version_regexp, Vcurrent_load_list)
      	(Veval_buffer_list, Vload_file_name, Vload_file_rep_suffixes)
      	(Vload_history, Vload_path, Vload_read_function)
      	(Vload_source_file_function, Vload_suffixes, Vobarray)
      	(Vold_style_backquotes, Vpreloaded_file_list, Vread_circle)
      	(Vread_symbol_positions_list, Vread_with_symbol_positions)
      	(Vsource_directory, Vstandard_input, Vuser_init_file, Vvalues)
      	(force_load_messages, load_convert_to_unibyte)
      	(load_dangerous_libraries, load_force_doc_strings)
      	(load_in_progress): Remove.
      	* keymap.c (syms_of_keymap): Update.
      	(Vdefine_key_rebound_commands, Vemulation_mode_map_alists)
      	(Vminibuffer_local_completion_map)
      	(Vminibuffer_local_filename_completion_map)
      	(Vminibuffer_local_filename_must_match_map)
      	(Vminibuffer_local_map, Vminibuffer_local_must_match_map)
      	(Vminibuffer_local_ns_map, Vminor_mode_map_alist)
      	(Vminor_mode_overriding_map_alist, Vwhere_is_preferred_modifier):
      	Remove.
      	* keyboard.c (syms_of_keyboard): Update.
      	(Vauto_save_timeout, Vcommand_error_function)
      	(Vcommand_hook_internal, Vdeactivate_mark)
      	(Vdeferred_action_function, Vdeferred_action_list)
      	(Vdisable_point_adjustment, Vdouble_click_time)
      	(Vecho_keystrokes, Venable_disabled_menus_and_buttons)
      	(Vfunction_key_map, Vglobal_disable_point_adjustment)
      	(Vhelp_char, Vhelp_event_list, Vhelp_form)
      	(Vinput_method_function, Vinput_method_previous_message)
      	(Vkey_translation_map, Vlast_event_frame)
      	(Vlucid_menu_bar_dirty_flag, Vmenu_bar_final_items)
      	(Vminibuffer_message_timeout, Voverriding_local_map)
      	(Voverriding_local_map_menu_flag, Vpost_command_hook)
      	(Vpre_command_hook, Vprefix_help_command)
      	(Vsaved_region_selection, Vselect_active_regions)
      	(Vshow_help_function, Vspecial_event_map, Vsuggest_key_bindings)
      	(Vthis_command, Vthis_command_keys_shift_translated)
      	(Vthis_original_command, Vthrow_on_input, Vtimer_idle_list)
      	(Vtimer_list, Vtool_bar_separator_image_expression, Vtop_level)
      	(Vtty_erase_char, Vunread_command_events)
      	(Vunread_input_method_events, Vunread_post_input_method_events)
      	(auto_save_interval, cannot_suspend, do_mouse_tracking)
      	(double_click_fuzz, extra_keyboard_modifiers)
      	(inhibit_local_menu_bar_menus, last_command_event)
      	(last_input_event, last_nonmenu_event, menu_prompt_more_char)
      	(menu_prompting, meta_prefix_char, num_input_keys)
      	(num_nonmacro_input_events, polling_period, unread_command_char):
      	Remove.
      	* insdel.c (syms_of_insdel): Update.
      	(Vcombine_after_change_calls, check_markers_debug_flag): Remove.
      	* indent.c (syms_of_indent): Update.
      	(indent_tabs_mode): Remove.
      	* image.c (syms_of_image): Update.
      	(Vimage_cache_eviction_delay, Vimage_types)
      	(Vimagemagick_render_type, Vmax_image_size, Vx_bitmap_file_path)
      	(cross_disabled_images): Remove.
      	* fringe.c (syms_of_fringe): Update.
      	(Vfringe_bitmaps, Voverflow_newline_into_fringe): Remove.
      	* frame.c (syms_of_frame): Update.
      	(Vdefault_frame_alist, Vdefault_frame_scroll_bars)
      	(Vdelete_frame_functions, Vframe_alpha_lower_limit)
      	(Vmake_pointer_invisible, Vmenu_bar_mode, Vmouse_highlight)
      	(Vmouse_position_function, Vterminal_frame, Vtool_bar_mode)
      	(Vx_resource_class, Vx_resource_name, focus_follows_mouse):
      	Remove.
      	* fontset.c (syms_of_fontset): Update.
      	(Valternate_fontname_alist, Vfont_encoding_charset_alist)
      	(Vfontset_alias_alist, Vignore_relative_composition)
      	(Votf_script_alist, Vuse_default_ascent)
      	(Vvertical_centering_font_regexp): Remove.
      	* font.c (syms_of_font): Update.
      	(Vfont_encoding_alist, Vfont_log, Vfont_slant_table)
      	(Vfont_weight_table, Vfont_width_table): Remove.
      	* fns.c (syms_of_fns): Update.
      	(Vfeatures, use_dialog_box, use_file_dialog): Remove.
      	* filelock.c (syms_of_filelock): Update.
      	(Vtemporary_file_directory): Remove.
      	* fileio.c (syms_of_fileio): Update.
      	(Vafter_insert_file_functions, Vauto_save_include_big_deletions)
      	(Vauto_save_list_file_name, Vauto_save_visited_file_name)
      	(Vdefault_file_name_coding_system, Vfile_name_coding_system)
      	(Vfile_name_handler_alist, Vinhibit_file_name_handlers)
      	(Vinhibit_file_name_operation, Vset_auto_coding_function)
      	(Vwrite_region_annotate_functions)
      	(Vwrite_region_annotations_so_far)
      	(Vwrite_region_post_annotation_function)
      	(delete_by_moving_to_trash, write_region_inhibit_fsync): Remove.
      	(Vw32_get_true_file_attributes): Remove declaration.
      	* eval.c (syms_of_eval): Update.
      	(Vdebug_ignored_errors, Vdebug_on_error, Vdebug_on_signal)
      	(Vdebugger, Vinhibit_quit, Vmacro_declaration_function)
      	(Vquit_flag, Vsignal_hook_function, Vstack_trace_on_error)
      	(debug_on_next_call, debug_on_quit, debugger_may_continue)
      	(max_lisp_eval_depth, max_specpdl_size): Remove.
      	* emacs.c (syms_of_emacs): Update.
      	(Vafter_init_time, Vbefore_init_time, Vcommand_line_args)
      	(Vdynamic_library_alist, Vemacs_copyright, Vemacs_version)
      	(Vinstallation_directory, Vinvocation_directory)
      	(Vinvocation_name, Vkill_emacs_hook, Vpath_separator)
      	(Vprevious_system_messages_locale, Vprevious_system_time_locale)
      	(Vsystem_configuration, Vsystem_configuration_options)
      	(Vsystem_messages_locale, Vsystem_time_locale, Vsystem_type)
      	(inhibit_x_resources, noninteractive1): Remove.
      	* editfns.c (syms_of_editfns): Update.
      	(Vbuffer_access_fontified_property)
      	(Vbuffer_access_fontify_functions, Vinhibit_field_text_motion)
      	(Voperating_system_release, Vsystem_name, Vuser_full_name)
      	(Vuser_login_name, Vuser_real_login_name): Remove.
      	* dosfns.c (syms_of_dosfns): Update.
      	(Vdos_display_scancodes, Vdos_version, Vdos_windows_version)
      	(dos_codepage, dos_country_code, dos_decimal_point)
      	(dos_hyper_key, dos_keyboard_layout, dos_keypad_mode)
      	(dos_super_key, dos_timezone_offset): Remove.
      	* doc.c (syms_of_doc): Update.
      	(Vbuild_files, Vdoc_file_name): Remove.
      	* dispnew.c (syms_of_display): Update.
      	(Vglyph_table, Vinitial_window_system)
      	(Vredisplay_preemption_period, Vstandard_display_table)
      	(Vwindow_system_version, baud_rate, cursor_in_echo_area)
      	(inverse_video, redisplay_dont_pause, visible_bell): Remove.
      	* dired.c (syms_of_dired): Update.
      	(Vcompletion_ignored_extensions): Remove.
      	(Vw32_get_true_file_attributes): Remove declaration.
      	* dbusbind.c (syms_of_dbusbind): Update.
      	(Vdbus_debug, Vdbus_registered_buses)
      	(Vdbus_registered_objects_table): Remove.
      	* data.c (syms_of_data): Update.
      	(Vmost_negative_fixnum, Vmost_positive_fixnum): Remove.
      	* composite.c (syms_of_composite): Update.
      	(Vauto_composition_function, Vauto_composition_mode)
      	(Vcompose_chars_after_function, Vcomposition_function_table):
      	Remove.
      	* coding.c (syms_of_coding): Update.
      	(Vcharset_revision_table, Vcoding_category_list)
      	(Vcoding_system_alist, Vcoding_system_for_read)
      	(Vcoding_system_for_write, Vcoding_system_list)
      	(Vdefault_process_coding_system, Venable_character_translation)
      	(Vfile_coding_system_alist, Vlast_code_conversion_error)
      	(Vlast_coding_system_used, Vlatin_extra_code_table)
      	(Vlocale_coding_system, Vnetwork_coding_system_alist)
      	(Vprocess_coding_system_alist)
      	(Vselect_safe_coding_system_function)
      	(Vstandard_translation_table_for_decode)
      	(Vstandard_translation_table_for_encode)
      	(Vtranslation_table_for_input, coding_system_require_warning)
      	(eol_mnemonic_dos, eol_mnemonic_mac, eol_mnemonic_undecided)
      	(eol_mnemonic_unix, inherit_process_coding_system)
      	(inhibit_eol_conversion, inhibit_iso_escape_detection)
      	(inhibit_null_byte_detection): Remove.
      	* cmds.c (syms_of_cmds): Update.
      	(Vpost_self_insert_hook): Remove.
      	* charset.c (syms_of_charset): Update.
      	(Vcharset_list, Vcharset_map_path, Vcurrent_iso639_language)
      	(inhibit_load_charset_map): Remove.
      	* character.c (syms_of_character): Update.
      	(Vauto_fill_chars, Vchar_direction_table, Vchar_script_table)
      	(Vchar_width_table, Vprintable_chars)
      	(Vscript_representative_chars, Vtranslation_table_vector)
      	(Vunicode_category_table): Remove.
      	* ccl.c (syms_of_ccl): Update.
      	(Vcode_conversion_map_vector, Vfont_ccl_encoder_alist)
      	(Vtranslation_hash_table_vector): Remove.
      	* category.c (syms_of_category): Update.
      	(Vword_combining_categories, Vword_separating_categories): Remove.
      	* callproc.c (syms_of_callproc): Update.
      	(Vconfigure_info_directory, Vdata_directory, Vdoc_directory)
      	(Vexec_directory, Vexec_path, Vexec_suffixes)
      	(Vinitial_environment, Vprocess_environment)
      	(Vshared_game_score_directory, Vshell_file_name): Remove.
      	* callint.c (syms_of_callint): Update.
      	(Vcommand_debug_status, Vcommand_history, Vcurrent_prefix_arg)
      	(Vmark_even_if_inactive, Vmouse_leave_buffer_hook): Remove.
      	* bytecode.c (syms_of_bytecode): Update.
      	(Vbyte_code_meter, byte_metering_on): Remove.
      	* buffer.c (syms_of_buffer): Update.
      	(Vafter_change_functions, Vbefore_change_functions)
      	(Vchange_major_mode_hook, Vfirst_change_hook)
      	(Vinhibit_read_only, Vkill_buffer_query_functions)
      	(Vtransient_mark_mode, inhibit_modification_hooks): Remove.
      	* alloc.c (syms_of_alloc): Update.
      	(Vgc_cons_percentage, Vgc_elapsed, Vmemory_full)
      	(Vmemory_signal_data, Vpost_gc_hook, Vpurify_flag)
      	(cons_cells_consed, floats_consed, garbage_collection_messages)
      	(gc_cons_threshold, gcs_done, intervals_consed)
      	(misc_objects_consed, pure_bytes_used, string_chars_consed)
      	(strings_consed, symbols_consed, vector_cells_consed): Remove.
      
      	* lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
      	(DEFVAR_INT): Assume global is in `globals'.
      	* alloc.c (globals): Define.
      29208e82
  24. 15 Jan, 2011 1 commit
  25. 02 Jan, 2011 1 commit
  26. 02 Jul, 2010 1 commit
    • Jan D's avatar
      Remove P_ and __P macros. · 383e0970
      Jan D authored
      * lwlib/lwlib-Xaw.h: Remove P_ and __P macros.
      * lwlib/lwlib-Xlw.h:
      * lwlib/lwlib-Xm.h:
      * lwlib/lwlib-int.h:
      * lwlib/lwlib-utils.h:
      * lwlib/lwlib.h: Likewise.
      
      * src/buffer.h: Remove P_ and __P macros.
      * src/category.h:
      * src/ccl.h:
      * src/character.h:
      * src/charset.h:
      * src/cm.h:
      * src/coding.h:
      * src/composite.h:
      * src/dispextern.h:
      * src/disptab.h:
      * src/font.h:
      * src/fontset.h:
      * src/frame.h:
      * src/gtkutil.h:
      * src/indent.h:
      * src/intervals.h:
      * src/keyboard.h:
      * src/keymap.h:
      * src/lisp.h:
      * src/macros.h:
      * src/md5.h:
      * src/menu.h:
      * src/msdos.h:
      * src/nsterm.h:
      * src/puresize.h:
      * src/region-cache.h:
      * src/syntax.h:
      * src/syssignal.h:
      * src/systime.h:
      * src/termhooks.h:
      * src/w32term.h:
      * src/widget.h:
      * src/window.h:
      * src/xgselect.h:
      * src/xsettings.h:
      * src/xterm.h: Likewise.
      383e0970
  27. 13 Jan, 2010 1 commit
  28. 08 Jan, 2009 1 commit
  29. 15 May, 2008 1 commit
  30. 27 Feb, 2008 1 commit
    • Kim F. Storm's avatar
      (GLYPH_SIMPLE_P): Rewrite. · ea92fc1a
      Kim F. Storm authored
      (GLYPH_ALIAS): Delete.
      (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
      (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
      (GLYPH_FROM_CHAR): Replace macro by ...
      (SET_GLYPH_FROM_CHAR): ... this macro.  Change users.
      ea92fc1a
  31. 08 Jan, 2008 1 commit
  32. 25 Jul, 2007 1 commit
  33. 14 Jan, 2007 1 commit
  34. 06 Feb, 2006 1 commit
  35. 07 Aug, 2005 1 commit
  36. 04 Jul, 2005 1 commit
  37. 16 Apr, 2004 1 commit
  38. 08 Sep, 2003 1 commit