1. 04 Aug, 2013 1 commit
    • Paul Eggert's avatar
      Fix some minor races in hosts lacking mkostemp. · e0fdb694
      Paul Eggert authored
      Gnulib's emulation of mkostemp doesn't have races that Emacs's does.
      * configure.ac (mkostemp): Remove check for this function;
      gnulib does the check now.
      (mkstemp): Remove check for this no-longer-used function.
      * lib/mkostemp.c, lib/secure_getenv.c, lib/tempname.c, lib/tempname.h:
      * m4/mkostemp.m4, m4/secure_getenv.m4, m4/tempname.m4:
      New files, copied from Gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add mkostemp.
      * lib-src/movemail.c (main):
      * lib-src/update-game-score.c (write_scores):
      Use mkostemp (which now works on all platforms, due to changes
      in the portability layer) rather than mktemp (which has a race)
      or mkstemp (which we no longer bother with).
      * src/callproc.c (create_temp_file):
      * src/filelock.c (create_lock_file):
      Assume mkostemp, since it's now provided by Gnulib.
      
      Fixes: debbugs:15015
      e0fdb694
  2. 12 Jul, 2013 1 commit
  3. 09 Jul, 2013 2 commits
    • Paul Eggert's avatar
      Port recent close-on-exec changes to Cygwin. · 7b154def
      Paul Eggert authored
      * lib/binary-io.c, lib/binary-io.h: New files.
      Merge from gnulib, incorporating:
      2013-07-09 accept4, dup3, pipe2: port to Cygwin
      * lib/pipe2.c: Update from gnulib, as part of this merge.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      
      Fixes: debbugs:14821
      7b154def
    • Paul Eggert's avatar
      Handle errno and exit status a bit more carefully. · 4ebbdd67
      Paul Eggert authored
      * lib/ignore-value.h: Remove this gnulib-imported file.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Remove ignore-value.
      * src/callproc.c (child_setup) [!DOS_NT]: Don't try to stuff an error
      number into an exit status.  Instead, use EXIT_CANCELED.
      (child_setup) [!MSDOS]: Avoid possible deadlock with vfork.
      * src/callproc.c (relocate_fd):
      * src/emacs.c (close_output_streams, main):
      * src/process.c (create_process):
      * src/sysdep.c (sys_subshell) [!DOS_NT || !WINDOWSNT]:
      Use emacs_perror for simplicity.
      * src/callproc.c (relocate_fd, main):
      * src/sysdep.c (sys_subshell):
      Exit with EXIT_CANCELED etc., not 1, when exec setup fails.
      (shut_down_emacs): Use emacs_write, not write.
      * src/emacs.c, src/sysdep.c: Don't include <ignore-value.h>.
      * src/fileio.c (Fcopy_file, e_write):
      * src/nsterm.m (ns_select):
      * src/process.c (send_process):
      * src/sound.c (vox_write):
      Use emacs_write_sig, not emacs_write.
      * src/lisp.h (emacs_write_sig, emacs_perror): New decls.
      * src/process.h (EXIT_CANCELED), EXIT_CANNOT_INVOKE, EXIT_ENOENT):
      New constants.
      * src/sysdep.c (emacs_backtrace): Use emacs_write, not ignore_value
      of write.
      (emacs_full_write): New function.
      (emacs_write): Rewrite to use it.
      (emacswrite_sig, emacs_perror): New functions.
      * src/xrdb.c (fatal): Don't invoke perror, since errno might be garbage.
      4ebbdd67
  4. 07 Jul, 2013 1 commit
    • Paul Eggert's avatar
      Make file descriptors close-on-exec when possible. · 067428c1
      Paul Eggert authored
      This simplifies Emacs a bit, since it no longer needs to worry
      about closing file descriptors by hand in some cases.
      It also fixes some unlikely races.  Not all such races, as
      libraries often open files internally without setting
      close-on-exec, but it's an improvement.
      * admin/merge-gnulib (GNULIB_MODULES): Add fcntl, pipe2.
      (GNULIB_TOOL_FLAGS): Avoid binary-io, close.  Do not avoid fcntl.
      * configure.ac (mkostemp): New function to check for.
      (PTY_OPEN): Pass O_CLOEXEC to posix_openpt.
      * lib/fcntl.c, lib/getdtablesize.c, lib/pipe2.c, m4/fcntl.m4:
      * m4/getdtablesize.m4, m4/pipe2.m4: New files, taken from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * nt/gnulib.mk: Remove empty gl_GNULIB_ENABLED_verify section;
      otherwise, gnulib-tool complains given close-on-exec changes.
      * nt/inc/ms-w32.h (pipe): Remove.
      * nt/mingw-cfg.site (ac_cv_func_fcntl, gl_cv_func_fcntl_f_dupfd_cloexec)
      (gl_cv_func_fcntl_f_dupfd_works, ac_cv_func_pipe2): New vars.
      * src/alloc.c (valid_pointer_p) [!WINDOWSNT]:
      * src/callproc.c (Fcall_process) [!MSDOS]:
      * src/emacs.c (main) [!DOS_NT]:
      * src/nsterm.m (ns_term_init):
      * src/process.c (create_process):
      Use 'pipe2' with O_CLOEXEC instead of 'pipe'.
      * src/emacs.c (Fcall_process_region) [HAVE_MKOSTEMP]:
      * src/filelock.c (create_lock_file) [HAVE_MKOSTEMP]:
      Prefer mkostemp with O_CLOEXEC to mkstemp.
      * src/callproc.c (relocate_fd) [!WINDOWSNT]:
      * src/emacs.c (main): Use F_DUPFD_CLOEXEC, not plain F_DUPFD.
      No need to use fcntl (..., F_SETFD, FD_CLOEXEC), since we're
      now using pipe2.
      * src/filelock.c (create_lock_file) [! HAVE_MKOSTEMP]:
      Make the resulting file descriptor close-on-exec.
      * src/lisp.h, src/lread.c, src/process.c (close_load_descs, close_process_descs):
      * src/lread.c (load_descriptor_list, load_descriptor_unwind):
      Remove; no longer needed.  All uses removed.
      * src/process.c (SOCK_CLOEXEC): Define to 0 if not supplied by system.
      (close_on_exec, accept4, process_socket) [!SOCK_CLOEXEC]:
      New functions.
      (socket) [!SOCK_CLOEXEC]: Supply a substitute.
      (Fmake_network_process, Fnetwork_interface_list):
      (Fnetwork_interface_info, server_accept_connection):
      Make newly-created socket close-on-exec.
      * src/sysdep.c (emacs_open, emacs_fopen):
      Make new-created descriptor close-on-exec.
      * src/w32.c (fcntl): Support F_DUPFD_CLOEXEC well enough for Emacs.
      * src/w32.c, src/w32.h (pipe2): Rename from 'pipe', with new flags arg.
      
      Fixes: debbugs:14803
      067428c1
  5. 06 Jul, 2013 2 commits
  6. 05 Jul, 2013 2 commits
  7. 29 Jun, 2013 2 commits
  8. 19 Jun, 2013 1 commit
  9. 15 Jun, 2013 1 commit
  10. 13 Jun, 2013 1 commit
  11. 02 Jun, 2013 1 commit
    • David Engster's avatar
      Merge from CEDET upstream (8564). · 890f7890
      David Engster authored
      * lisp/emacs-lisp:
      
      	* emacs-lisp/eieio.el (eieio--defalias, eieio-hook)
      	(eieio-error-unsupported-class-tags, eieio-skip-typecheck)
      	(eieio-optimize-primary-methods-flag, eieio-initializing-object)
      	(eieio-unbound, eieio-default-superclass)
      	(eieio--define-field-accessors, method-static, method-before)
      	(method-primary, method-after, method-num-lists)
      	(method-generic-before, method-generic-primary)
      	(method-generic-after, method-num-slots)
      	(eieio-specialized-key-to-generic-key)
      	(eieio--check-type, class-v, class-p)
      	(eieio-class-name, define-obsolete-function-alias)
      	(eieio-class-parents-fast, eieio-class-children-fast)
      	(same-class-fast-p, class-constructor, generic-p)
      	(generic-primary-only-p, generic-primary-only-one-p)
      	(class-option-assoc, class-option, eieio-object-p)
      	(class-abstract-p, class-method-invocation-order)
      	(eieio-defclass-autoload-map, eieio-defclass-autoload)
      	(eieio-class-un-autoload, eieio-defclass)
      	(eieio-eval-default-p, eieio-perform-slot-validation-for-default)
      	(eieio-add-new-slot, eieio-copy-parents-into-subclass)
      	(eieio--defgeneric-init-form, eieio-defgeneric-form)
      	(eieio-defgeneric-reset-generic-form)
      	(eieio-defgeneric-form-primary-only)
      	(eieio-defgeneric-reset-generic-form-primary-only)
      	(eieio-defgeneric-form-primary-only-one)
      	(eieio-defgeneric-reset-generic-form-primary-only-one)
      	(eieio-unbind-method-implementations)
      	(eieio--defmethod, eieio--typep)
      	(eieio-perform-slot-validation, eieio-validate-slot-value)
      	(eieio-validate-class-slot-value, eieio-barf-if-slot-unbound)
      	(eieio-oref, eieio-oref-default, eieio-default-eval-maybe)
      	(eieio-oset, eieio-oset-default, eieio-slot-originating-class-p)
      	(eieio-slot-name-index, eieio-class-slot-name-index)
      	(eieio-set-defaults, eieio-initarg-to-attribute)
      	(eieio-attribute-to-initarg, eieio-c3-candidate)
      	(eieio-c3-merge-lists, eieio-class-precedence-c3)
      	(eieio-class-precedence-dfs, eieio-class-precedence-bfs)
      	(eieio-class-precedence-list, eieio-generic-call-methodname)
      	(eieio-generic-call-arglst, eieio-generic-call-key)
      	(eieio-generic-call-next-method-list)
      	(eieio-pre-method-execution-functions, eieio-generic-call)
      	(eieio-generic-call-primary-only, eieiomt-method-list)
      	(eieiomt-optimizing-obarray, eieiomt-install)
      	(eieiomt-add, eieiomt-next, eieiomt-sym-optimize)
      	(eieio-generic-form, eieio-defmethod, make-obsolete)
      	(eieio-defgeneric, make-obsolete): Moved to eieio-core.el
      	(defclass): Remove `eval-and-compile' from macro.
      	(call-next-method, shared-initialize): Instead of using
      	`scoped-class' variable, use new eieio--scoped-class, and
      	eieio--with-scoped-class.
      	(initialize-instance): Rename local variable 'scoped-class' to
      	'this-class' to remove ambiguitity from old global.
      
      	* emacs-lisp/eieio-core.el: New file.  Derived from key parts of
      	eieio.el.
      	(eieio--scoped-class-stack): New variable
      	(eieio--scoped-class): New fcn
      	(eieio--with-scoped-class): New scoping macro.
      	(eieio-defclass): Use pushnew instead of add-to-list.
      	(eieio-defgeneric-form-primary-only-one, eieio-oset-default)
      	(eieio-slot-name-index, eieio-set-defaults, eieio-generic-call)
      	(eieio-generic-call-primary-only, eieiomt-add): Instead of using
      	`scoped-class' variable, use new eieio--scoped-class, and
      	eieio--with-scoped-class.
      
      	* emacs-lisp/eieio-base.el (cl-lib): Require during compile.
      
      * admin/grammars:
      
      	* grammars/srecode-template.wy (variable): Accept a single number
      	as a variable value.  Allows the 'priority' to be set to a number.
      	(wisent-srecode-template-lexer): Move number up so it can be
      	created.
      
      * etc/srecode:
      
      	* srecode/c.srt (header_guard): Add :c parameter so it works
      	standalone
      
      * lisp/cedet:
      
      	* semantic/edit.el (semantic-change-function): Use
      	`save-match-data' around running hooks.
      
      	* semantic/decorate/mode.el
      	(semantic-decorate-style-predicate-default)
      	(semantic-decorate-style-highlighter-default): New.
      	(semantic-decoration-mode): Do not require
      	`semantic/decorate/include' anymore.
      	(semantic-toggle-decoration-style): Error if an unknown decoration
      	style is toggled.
      	(define-semantic-decoration-style): Add new :load option.  When
      	:load is specified, add autoload tokens for the definition
      	functions so that code is loaded when the mode is used.
      	(semantic-decoration-on-includes): New autoload definition for
      	highlighting includes.
      
      	* semantic/bovine/c.el (semantic-lex-c-ifdef): Allow some misc
      	characters to appear after the tested variable.
      
      	* semantic/ede-grammar.el (project-compile-target): Calculate full
      	src name via ede-expand-filename instead of the crutch of the
      	current buffer.  Enables this target to compile in batch mode.
      
      	* semantic/idle.el
      	(semantic-idle-symbol-maybe-highlight): Wrap highlighting of
      	remote symbol with `save-excursion'.
      	(semantic-idle-scheduler-work-parse-neighboring-files): Instead of
      	using directory-files on each found mode pattern, collect all the
      	patterns for the current mode, and then for each file, see if it
      	matches any of them.  If it does, parse the file.  (Patch
      	inspiration from Tomasz Gajewski.)
      
      	* semantic/ctxt.el (semantic-ctxt-end-of-symbol): New.
      	(semantic-ctxt-current-symbol-default): New.
      
      	* semantic/bovine/el.el (semantic-default-elisp-setup): Add
      	autoload cookie.  Explain existence.
      	(footer): Add local variable for loaddefs.
      
      	* semantic/db.el (semanticdb-file-table-object): Add new filter,
      	only checking for regular files too.
      
      	* semantic/wisent/python.el
      	(semantic-format-tag-abbreviate): New override.  Cuts back on size
      	of code tags.
      
      	* srecode/compile.el (srecode-compile-templates): Fix warning
      	punctuation.  Remove status messages to clean up testing output
      
      	* ede/base.el (ede-project-placeholder-cache-file): Update doc to
      	mention 'nil' value.
      	(ede-save-cache): Disable cache save if file is nil.
      
      	* ede.el (ede-initialize-state-current-buffer): Flush deleted
      	projects.
      	(global-ede-mode): Always append our find-file-hook to the end.
      	(ede-flush-deleted-projects): New command.
      
      	* ede/cpp-root.el (ede-preprocessor-map): Protect against init
      	problems.
      
      	* ede/proj.el (ede-proj-target): Added a new "custom" option for
      	custom symbols representing a compiler or linker instead of
      	restricting things to only the predefined compilers and linkers.
      
      	* semantic.el (semantic-mode-map): To avoid showing showing
      	Development menu twice, only disable menu item if menu-bar is
      	actually enabled, otherwise the popup 'global menu' might display
      	a disabled Development menu.
      
      	* semantic/complete.el
      	(semantic-displayor-show-request): Fix which slot in obj is set to
      	the max tags.
      890f7890
  12. 16 May, 2013 1 commit
  13. 15 May, 2013 1 commit
    • Stefan Monnier's avatar
      Use just DOC instead of DOC-nn.mm. · 6e911150
      Stefan Monnier authored
      * lisp/loadup.el: Just use unversioned DOC.
      * Makefile.in (install-doc): DOC file is not version specific any more.
      * .bzrignore: Don't ignore DOC-* any more.
      * admin/quick-install-emacs: Don't prune DOC-* files a any more.
      * doc/lispref/loading.texi (Autoload):
      * doc/lispref/help.texi (Documentation Basics, Accessing Documentation)
      (Accessing Documentation, Accessing Documentation): DOC-* is now DOC.
      * etc/.gitignore: Don't ignore DOC-* any more.
      * lib-src/makefile.w32-in ($(DOC)): Use DOC rather than DOC-X.
      * msdos/sed1x.inp: Don't rewrite DOC any more.
      * nt/makefile.w32-in (clean, top-distclean): DOC-X doesn't exist any more.
      * src/Makefile.in (bootstrap-clean): DOC-* doesn't exist any more.
      * src/makefile.w32-in (DOC): Use just "DOC".
      6e911150
  14. 14 May, 2013 1 commit
    • Glenn Morris's avatar
      More cus-test.el tweaks · 29efd469
      Glenn Morris authored
      * admin/cus-test.el (cus-test-get-lisp-files): Ignore obsolete/.
      (cus-test-libs): Fix let-binding of default-directory.
      (cus-test-noloads): Load all libs for the comparison.
      29efd469
  15. 11 May, 2013 1 commit
    • Glenn Morris's avatar
      More cus-test.el tweaks · 5d108606
      Glenn Morris authored
      * admin/cus-test.el (cus-test-libs-noloads): Add a few more files.
      (cus-test-load-libs, cus-test-opts):
      Add option to load more/all Lisp files.
      (cus-test-get-lisp-files): Ignore .*.el files.
      5d108606
  16. 10 May, 2013 1 commit
  17. 09 May, 2013 2 commits
    • Glenn Morris's avatar
      admin/cus-test,el misc updates · d631786a
      Glenn Morris authored
      Mainly for some files listed in loaddefs.el now being in subdirs that
      are not in load-path.
      
      * admin/cus-test.el (cus-test-libs-noloads): Add dunnet in the defvar.
      (dunnet): Don't always load it.
      (viper-mode): Only set if interactive.
      (cus-test-load-custom-loads): Load dunnet if necessary.
      (cus-test-load-1): New macro, with common code from cus-test-load-libs
      and cus-test-libs.
      (cus-test-load-libs, cus-test-libs): Use cus-test-load-1 macro.
      Update for cus-test-get-autoload-deps changed result.
      (cus-test-get-autoload-deps): Simplify.  Return file names as they
      appear in loaddefs.el (directory parts are needed now that not all
      lisp subdirs are in load-path).
      (cus-test-deps): Explicitly skip dunnet.
      d631786a
    • Glenn Morris's avatar
      * admin/cus-test.el: No need to provide bbdb, bbdb-com any more. · 2dee4d5e
      Glenn Morris authored
      Remove some outdated comments.
      2dee4d5e
  18. 07 May, 2013 1 commit
    • Paul Eggert's avatar
      Use Gnulib ACL implementation, for benefit of Solaris etc. · ffdc270a
      Paul Eggert authored
      * configure.ac: Remove -with-acl option, since Gnulib does that for
      us now.
      (LIBACL_LIBS): Remove; no longer needed.
      * lib/Makefile.am (CLEANFILES, SUFFIXES): New (empty) macros,
      for the benefit of the new ACL implementation.
      * lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/acl-errno-valid.$(O).
      ($(BLD)/acl-errno-valid.$(O)): New rule.
      * lib/acl-errno-valid.c, lib/acl-internal.h, lib/acl.h:
      * lib/acl_entries.c, lib/errno.in.h, lib/file-has-acl.c:
      * lib/qcopy-acl.c, lib/qset-acl.c, m4/acl.m4, m4/errno_h.m4:
      New files, taken from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * admin/merge-gnulib (GNULIB_MODULES): Add qacl.
      (GNULIB_TOOL_FLAGS): Do not avoid errno.
      * etc/NEWS: Emacs is no longer limited to POSIX ACLs.  --disable-acl,
      not --without-acl, since we're now using Gnulib's implementation.
      * nt/config.nt (HAVE_ACL_SET_FILE): Rename from HAVE_POSIX_ACL.
      * nt/inc/ms-w32.h (EOPNOTSUPP): New macro.
      * src/Makefile.in (LIB_ACL): New macro.
      (LIBACL_LIBS): Remove.
      (LIBES): Use LIB_ACL, not LIBACL_LIBS.
      * src/fileio.c: Include <acl.h>.
      Use HAVE_ACL_SET_FILE rather than HAVE_POSIX_ACL.
      (ACL_NOT_WELL_SUPPORTED): Remove.  All uses replaced by
      !acl_errno_valid.
      (Fcopy_file) [!WINDOWSNT]: Use qcopy_acl instead of rolling
      it ourselves.
      
      Fixes: debbugs:14295
      ffdc270a
  19. 02 Apr, 2013 1 commit
    • Paul Eggert's avatar
      Use UTF-8 for most files with non-ASCII characters. · 4b725a70
      Paul Eggert authored
      * admin/notes/unicode (etc/tutorials/TUTORIAL.ko, leim/quail/hanja.el)
      (leim/quail/hanja3.el, leim/quail/symbol-ksc.el):
      Now utf-8, not iso-2022-7bit.  Also, files that contain non-UTF-8
      characters are now encoded in utf-8-emacs, not iso-2022-7bit.
      * etc/tutorials/TUTORIAL.ko, tutorials/TUTORIAL.th:
      Switch from iso-2022-7bit to utf-8.
      * leim/quail/cyrillic.el, leim/quail/czech.el, leim/quail/ethiopic.el:
      * leim/quail/greek.el, leim/quail/hanja.el, leim/quail/hanja3.el:
      * leim/quail/hebrew.el, leim/quail/lao.el, leim/quail/lrt.el:
      * leim/quail/slovak.el, leim/quail/symbol-ksc.el, leim/quail/thai.el:
      * leim/quail/tibetan.el, leim/quail/viqr.el, leim/quail/vntelex.el:
      * leim/quail/vnvni.el, leim/quail/welsh.el:
      * lisp/international/latin1-disp.el, lisp/international/mule-util.el:
      * lisp/language/cyril-util.el, lisp/language/european.el:
      * lisp/language/ind-util.el, lisp/language/lao-util.el, lisp/language/thai.el:
      * lisp/language/tibet-util.el, lisp/language/tibetan.el:
      * lisp/language/viet-util.el:
      Switch from iso-2022-7bit to utf-8 or (if needed) utf-8-emacs.
      
      Fixes: debbugs:13936
      4b725a70
  20. 18 Mar, 2013 2 commits
  21. 14 Mar, 2013 1 commit
  22. 13 Mar, 2013 1 commit
    • Paul Eggert's avatar
      File synchronization fixes. · 47d7532e
      Paul Eggert authored
      * admin/CPP-DEFINES (BSD_SYSTEM, HAVE_FSYNC): Remove.
      * admin/merge-gnulib (GNULIB_MODULES): Add fsync, fdatasync.
      * configure.ac (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
      (fsync): Remove check; now done by gnulib.
      * lib/fdatasync.c, lib/fsync.c, m4/fdatasync.m4, m4/fsync.m4:
      New files, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib-src/Makefile.in (LIB_FDATASYNC): New macro.
      (emacsclient${EXEEXT}): Use it.
      * lib-src/emacsclient.c (main): Use fdatasync, not fsync, since we don't
      care about metadata.  Keep trying if interrupted.
      * lib-src/movemail.c (main, popmail): Don't worry about BSD_SYSTEM, since
      fsync is available everywhere (or there is a substitute).  Don't
      report an error if fsync returns EINVAL.
      * nt/inc/ms-w32.h (fdatasync): New macro, suggested by Eli Zaretskii.
      * src/Makefile.in (LIB_FDATASYNC): New macro.
      (LIBES): Use it.
      * src/conf_post.h (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
      * src/fileio.c (Fwrite_region, write_region_inhibit_fsync):
      Don't worry about HAVE_FSYNC, since a substitute fsync is
      available if the system lacks one.
      (Fwrite_regin): Retry fsync if interrupted.
      
      Fixes: debbugs:13944
      47d7532e
  23. 12 Mar, 2013 1 commit
    • Glenn Morris's avatar
      Tweaks for www.gnu.org html versions of manuals · c0765905
      Glenn Morris authored
      * admin/admin.el (manual-html-mono, manual-html-node): Add -DWWW_GNU_ORG.
      
      * doc/emacs/emacs.texi (Top): Add some stuff specific to www.gnu.org.
      
      * doc/lispintro/emacs-lisp-intro.texi: Add some stuff specific to www.gnu.org.
      
      * doc/lispref/elisp.texi: Add some stuff specific to www.gnu.org.
      c0765905
  24. 11 Mar, 2013 3 commits
  25. 10 Mar, 2013 1 commit
  26. 09 Mar, 2013 2 commits
  27. 05 Mar, 2013 1 commit
  28. 04 Mar, 2013 1 commit
    • Paul Eggert's avatar
      Fix encoding problem in javat-wy.el. · f5572543
      Paul Eggert authored
      * admin/grammars/java-tags.wy (CHAR): Remove "('\u0000' to '\uffff')"
      from summary, as this causes javat-wy.el to contain both a null byte
      and a byte sequence that is not valid UTF-8, which is inconvenient.
      * lisp/cedet/semantic/wisent/javat-wy.el: Regenerate.
      f5572543
  29. 03 Mar, 2013 1 commit
  30. 25 Feb, 2013 1 commit
    • Paul Eggert's avatar
      Simplify data_start configuration. · 1ddc2bd6
      Paul Eggert authored
      This is a followon simplification to the fix for Bug#13650.
      * admin/CPP-DEFINES (DATA_START, ORDINARY_LINK): Remove.
      * configure.ac (CRT_DIR, LIB_STANDARD, START_FILES, DATA_START)
      (LD_FIRSTFLAG, ORDINARY_LINK, LIB_GCC): Remove.
      (AC_CHECK_HEADERS_ONCE): Remove sys/resource.h, as it's
      not always needed.
      (HAVE_DATA_START): New macro.
      * etc/PROBLEMS (LIBS_SYSTEM, LIBS_MACHINE, LIBS_STANDARD): Remove.
      Remove legacy-systems section, as this stuff is no longer
      applicable with current linking strategies.
      * src/Makefile.in (LD_FIRSTFLAG, LIB_GCC, CRT_DIR, LIB_STANDARD)
      (START_FILES): Remove.  All uses removed.
      (otherobj): Remove $(VMLIMIT_OBJ), as it's now first.
      (ALLOBJS): Move here from autodeps.mk, and with VMLIMITS_OBJ first.
      (buildobj.h): Use it.
      ($(ALLOBJS)): Depend on globals.h.
      (temacs$(EXEEXT)): Use $(ALLOBJS).
      * src/autodeps.mk (ALLOBJS): Move to Makefile.in.
      * src/deps.mk (vm-limit.o):
      * src/makefile.w32-in ($(BLD)/vm-limit.$(O)):
      Do not depend on mem-limits.h.
      * src/emacs.c (__do_global_ctors, __do_global_ctors_aux)
      (__do_global_dtors, __CTOR_LIST__, __DTOR_LIST__)
      [__GNUC__ && !ORDINARY_LINK]: Remove.
      * src/mem-limits.h, src/pre-crt0.c: Remove.
      * src/unexaix.c, src/unexcoff.c: Don't include mem-limits.h.
      * src/unexcoff.c (etext): New decl.
      (make_hdr): Use it instead of start_of_data.
      * src/vm-limit.c: Move most of mem-limits.h's contents here.
      (data_start): New decl.  It's OK if this is approximate,
      so simplify-away some unnecessary exactness.
      (POINTER): Remove; all uses removed.
      (data_space_start): Now char *, to avoid casts.
      (exceeds_lisp_ptr): New function, replacing the old
      EXCEEDS_LISP_PTR macro.  All uses changed.
      (check_memory_limits): Simplify and remove casts.
      (start_of_data) [!CANNOT_DUMP || !SYSTEM_MALLOC]: Remove.
      (memory_warnings): Use data_start instead of start_of_data.
      
      Fixes: debbugs:13783
      1ddc2bd6
  31. 11 Feb, 2013 1 commit
    • Paul Eggert's avatar
      Tune by using memchr and memrchr. · a84b7c53
      Paul Eggert authored
      * .bzrignore: Add string.h.
      * admin/merge-gnulib (GNULIB_MODULES): Add memrchr.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * lib/memrchr.c, lib/string.in.h, m4/memrchr.m4, m4/string_h.m4:
      New files, from gnulib.
      * src/doc.c (Fsnarf_documentation):
      * src/fileio.c (Fsubstitute_in_file_name):
      * src/search.c (find_newline, scan_newline):
      * src/xdisp.c (pos_visible_p, display_count_lines):
      Use memchr and memrchr rather than scanning byte-by-byte.
      * src/search.c (find_newline): Rename from scan_buffer.
      Omit first arg TARGET, as it's always '\n'.  All callers changed.
      a84b7c53