Paul Eggert [Sun, 17 Jan 2016 20:12:08 +0000 (12:12 -0800)]
Prefer GnuTLS when acquiring random seed
This attempts to improve on the fix for Bug#22202.
* configure.ac (HAVE_DEV_URANDOM): Remove.
Check /dev/urandom existence at run time, not at build time,
since the device could exist in the former but not the latter.
* src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
(gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
(random_seed): New typedef.
(set_random_seed): New static function.
(seed_random): Use them.
(init_random): Use random_seed instead of uintmax_t, so as to
not consume more entropy than needed. Prefer gnutls_rnd if it
works; this avoids a redundant open of /dev/urandom on
GNU/Linux with modern GnuTLS.
Eli Zaretskii [Sat, 16 Jan 2016 15:36:21 +0000 (17:36 +0200)]
; * etc/NEWS: The final touch.
Eli Zaretskii [Sat, 16 Jan 2016 15:30:11 +0000 (17:30 +0200)]
Improve documentation of dynamic modules
* doc/lispref/loading.texi (How Programs Do Loading): Update the
description of searching for files in 'load' when Emacs was built
with support for dynamic modules.
Eli Zaretskii [Sat, 16 Jan 2016 15:20:34 +0000 (17:20 +0200)]
* INSTALL: Document --with-modules.
Eli Zaretskii [Sat, 16 Jan 2016 15:13:16 +0000 (17:13 +0200)]
Document 'function-put'
* doc/lispref/symbols.texi (Symbol Plists): Document
'function-put'. Update documentation of 'function-get'.
Eli Zaretskii [Sat, 16 Jan 2016 14:54:35 +0000 (16:54 +0200)]
Document 'funcall-interactively'
* doc/lispref/commands.texi (Interactive Call): Document
'funcall-interactively'.
* doc/lispref/functions.texi (Calling Functions): Mention
'funcall-interactively' and provide a cross-reference.
Eli Zaretskii [Sat, 16 Jan 2016 14:32:05 +0000 (16:32 +0200)]
* doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
Eli Zaretskii [Sat, 16 Jan 2016 14:03:03 +0000 (16:03 +0200)]
* doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
Eli Zaretskii [Sat, 16 Jan 2016 13:56:50 +0000 (15:56 +0200)]
Document renaming of selection-related functions
* doc/lispref/frames.texi (Window System Selections): Rename "x-*"
functions into the corresponding "gui-*" functions. Make the
description slightly less X-centric.
Eli Zaretskii [Sat, 16 Jan 2016 13:40:58 +0000 (15:40 +0200)]
* doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
Eli Zaretskii [Sat, 16 Jan 2016 13:30:47 +0000 (15:30 +0200)]
Document 'define-inline'
* doc/lispref/functions.texi (Defining Functions): Document
'define-inline' and related macros.
* lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
Glenn Morris [Sat, 16 Jan 2016 12:18:13 +0000 (07:18 -0500)]
; Auto-commit of loaddefs files.
Eli Zaretskii [Sat, 16 Jan 2016 12:04:23 +0000 (14:04 +0200)]
; * etc/NEWS: Mark entries that don't need further treatment.
Artur Malabarba [Sat, 16 Jan 2016 09:21:27 +0000 (09:21 +0000)]
* lisp/files.el (dir-locals--all-files): Respect absolute file-names
Artur Malabarba [Sat, 16 Jan 2016 09:18:13 +0000 (09:18 +0000)]
* lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
Artur Malabarba [Sat, 16 Jan 2016 08:52:14 +0000 (08:52 +0000)]
* lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
instead of manually writing a dir-locals file.
Artur Malabarba [Sat, 16 Jan 2016 08:50:46 +0000 (08:50 +0000)]
* lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
(dir-locals-file)
* lisp/files-x.el (modify-dir-local-variable)
* lisp/dos-fns.el (dosified-file-name)
* lisp/help-fns.el (describe-variable): Change accordingly.
Jussi Lahdenniemi [Sat, 16 Jan 2016 09:46:14 +0000 (11:46 +0200)]
Fix incompatbilities with MS-Windows 2000 and older
* src/w32.c <multiByteToWideCharFlags>: New global variable.
(filename_to_utf16, filename_from_ansi, check_windows_init_file):
Use it instead of the literal MB_ERR_INVALID_CHARS.
(maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
appropriate for the underlying OS version. For details, see
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
* src/w32.h: Declare multiByteToWideCharFlags.
* src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
(add_tray_notification): Use multiByteToWideCharFlags instead of
the literal MB_ERR_INVALID_CHARS.
(_resetstkoflw_proc): New typedef.
(w32_reset_stack_overflow_guard): Call _resetstkoflw via a
pointer, as this function is absent in msvcrt.dll shipped with W2K
and older systems.
Copyright-paperwork-exempt: yes
Eli Zaretskii [Sat, 16 Jan 2016 09:23:42 +0000 (11:23 +0200)]
Mention in PROBLEMS an issue with MS-Windows NT4
* etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
on Windows NT4. For the details, see
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
Jussi Lahdenniemi [Sat, 16 Jan 2016 09:11:12 +0000 (11:11 +0200)]
Ensure 8-byte aligned memory allocation on MS-Windows 9X
* src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
special functions on Windows 9X. Refuse to dump Emacs on Windows 9X.
(malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): New functions. (Bug#22379) See also
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
for more details about the original problem.
* nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
(free_after_dump_9x): Add prototypes.
Copyright-paperwork-exempt: yes
Eli Zaretskii [Sat, 16 Jan 2016 07:55:00 +0000 (09:55 +0200)]
Fix tests for active region in hideif.el
* lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
'use-region-p' to test whether to operate on region, instead of
testing 'mark-active'.
Eli Zaretskii [Sat, 16 Jan 2016 07:40:12 +0000 (09:40 +0200)]
Fix interactive specs in some hideif.el commands
* lisp/progmodes/hideif.el (hif-evaluate-macro)
(hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
in commands that should only act on the region if it's active.
Phillip Lord [Fri, 15 Jan 2016 22:20:34 +0000 (22:20 +0000)]
Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
Phillip Lord [Fri, 15 Jan 2016 22:11:39 +0000 (22:11 +0000)]
Enable test selector from command line
* test/automated/Makefile.in: Change variable manipulation to avoid
over-writing selector.
Alan Mackenzie [Fri, 15 Jan 2016 21:15:20 +0000 (21:15 +0000)]
Don't confuse "::" with ":" when trying to parse member initializers.
* lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
more robustly for ":" token when searching backwards for it.
* lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
variable.
Eli Zaretskii [Fri, 15 Jan 2016 15:36:47 +0000 (17:36 +0200)]
Ensure positive number of glyphs for margins of positive width
* src/dispnew.c (margin_glyphs_to_reserve): Always return a
positive value when a non-zero width of the marginal area was
requested. (Bug#22356)
Eli Zaretskii [Fri, 15 Jan 2016 15:07:38 +0000 (17:07 +0200)]
Fix crashes when mini-window has non-zero margins
* src/window.c (resize_frame_windows): Use 'new_size' to set
minibuffer window's 'total_cols' value, as 'size' might be in
pixels. (Bug#22356)
Alan Mackenzie [Fri, 15 Jan 2016 12:32:32 +0000 (12:32 +0000)]
In comment-dwim with style `extra-line', respect indent-tabs-mode.
This fixes bug #22369.
* lisp/newcomment.el (comment-make-bol-ws): New function.
(comment-make-extra-lines): Use new function instead of a crude `make-string'.
Eli Zaretskii [Fri, 15 Jan 2016 09:47:55 +0000 (11:47 +0200)]
Make 'random' seeds cryptographically secure if possible
* configure.ac: Check for "/dev/urandom".
* src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
for the seed from "/dev/urandom".
[WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
* src/fns.c (Frandom): Update the doc string to indicate that
system entropy is used when available.
* src/w32.c: Include wincrypt.h.
(w32_init_crypt_random, w32_init_random): New functions, use the
CryptGenRandom API.
(globals_of_w32): Initialize w32_crypto_hprov handle to zero.
* src/w32.h (w32_init_random): Add prototype.
* doc/lispref/numbers.texi (Random Numbers): Document more details
about 't' as the argument to 'random'.
* etc/NEWS: Mention that '(random t)' now uses a cryptographically
strong seed if possible.
(Bug#22202)
Eli Zaretskii [Fri, 15 Jan 2016 08:54:03 +0000 (10:54 +0200)]
Unhide the --no-line-directive option to 'etags'
* lib-src/etags.c (print_help): Un-undocument the --no-line-directive
option. (Bug#22306)
* doc/man/etags.1: Document the --no-line-directive option.
Alan J Third [Fri, 15 Jan 2016 08:26:10 +0000 (10:26 +0200)]
Fix picture-mode wrt double-width characters
* lisp/textmodes/picture.el (picture-insert): Check the width of
the character being replaced, not just that of the replacement.
(Bug#1808)
Copyright-paperwork-exempt: yes
Eli Zaretskii [Fri, 15 Jan 2016 08:14:30 +0000 (10:14 +0200)]
; * etc/NEWS: Remove unneeded text.
Eric Abrahamsen [Fri, 15 Jan 2016 05:00:40 +0000 (05:00 +0000)]
Honor docstring of gnus-group-get-new-news
* lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
but non-numeric, unconditionally consider all groups to need updating.
Simen Heggestøyl [Thu, 14 Jan 2016 18:24:03 +0000 (19:24 +0100)]
Disallow parenthesis in non-pseudo CSS selectors
* lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
parenthesis in selectors except for in the function notation that
might appear right after a pseudo-class.
* test/indent/scss-mode.scss: Add a test for it.
Glenn Morris [Thu, 14 Jan 2016 17:43:22 +0000 (12:43 -0500)]
; * lisp/time-stamp.el: Remove active time-stamp comment.
It was cute, but it's not needed as an example, and causes spurious
diffs/conflicts for those with time-stamping enabled.
Katsumi Yamaoka [Thu, 14 Jan 2016 11:26:13 +0000 (11:26 +0000)]
* lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
Michael Albinus [Thu, 14 Jan 2016 08:11:14 +0000 (09:11 +0100)]
check-maybe shall run only default tests
* test/automated/Makefile.in (check, check-expensive): Depend on
mostlyclean.
(check-maybe): Re-run only default tests.
(check-doit): Use code of check-maybe.
(mostlyclean): Move *.log files away.
Mark Oteiza [Thu, 14 Jan 2016 01:08:05 +0000 (20:08 -0500)]
* lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
Dmitry Gutov [Thu, 14 Jan 2016 00:38:57 +0000 (03:38 +0300)]
Un-obsolete tags-loop-continue
* lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
Eli Zaretskii [Wed, 13 Jan 2016 19:14:22 +0000 (21:14 +0200)]
Document obsoletion of 'intangible' and 'point-entered/left'
* doc/lispref/text.texi (Special Properties): Document the new
properties 'cursor-intangible' and 'cursor-sensor-functions'.
Document the obsolete status of 'intangible', 'pointer-left',
and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
* doc/lispref/display.texi (Overlay Properties): Document that
'intangible' overlay property is obsolete.
* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
Eli Zaretskii [Wed, 13 Jan 2016 18:36:11 +0000 (20:36 +0200)]
Updater documentation of 'looking-back'
* doc/lispref/searching.texi (Regexp Search): Update documentation
of 'looking-back'. Fix markup.
Eli Zaretskii [Wed, 13 Jan 2016 18:29:36 +0000 (20:29 +0200)]
Document 'pre-redisplay-functions'
* doc/lispref/hooks.texi (Standard Hooks):
* doc/lispref/display.texi (Forcing Redisplay): Document
'pre-redisplay-functions'.
Eli Zaretskii [Wed, 13 Jan 2016 18:19:00 +0000 (20:19 +0200)]
Document the new deafault value of 'load-read-function'
* doc/lispref/loading.texi (How Programs Do Loading): Document the
change in the default value of 'load-read-function'.
Eli Zaretskii [Wed, 13 Jan 2016 18:11:52 +0000 (20:11 +0200)]
Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
* doc/lispref/nonascii.texi (Text Representations): Document
'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
Eli Zaretskii [Wed, 13 Jan 2016 17:38:06 +0000 (19:38 +0200)]
Document the new prefix-command hooks
* doc/lispref/hooks.texi (Standard Hooks): Document
`prefix-command-echo-keystrokes-functions' and
`prefix-command-preserve-state-hook'.
Paul Eggert [Wed, 13 Jan 2016 16:30:46 +0000 (08:30 -0800)]
Fix one more misuse of time-stamp-time-zone
* test/etags/html-src/softwarelibero.html: Use "UTC0" rather
than the unportable "GMT" for time zone.
Paul Eggert [Wed, 13 Jan 2016 16:29:12 +0000 (08:29 -0800)]
Fix NNTP NEWGROUPS off-by-a-few-hours bug
* lisp/gnus/nntp.el (nntp-request-newgroups): Format string
in Universal Time, since we’re telling the server “GMT”.
Paul Eggert [Wed, 13 Jan 2016 03:34:24 +0000 (19:34 -0800)]
Update publicsuffix.txt from upstream
* etc/publicsuffix.txt: Update from
https://publicsuffix.org/list/effective_tld_names.dat
dated 2016-01-12 11:52:01 UTC.
Glenn Morris [Wed, 13 Jan 2016 01:49:34 +0000 (20:49 -0500)]
Fix some declarations.
* lisp/descr-text.el (internal-char-font):
* lisp/cedet/mode-local.el (xref-item-location):
* lisp/gnus/mml-smime.el (epg-key-sub-key-list)
(epg-sub-key-capability, epg-sub-key-validity):
* lisp/international/mule-util.el (internal-char-font):
Fix declarations.
Glenn Morris [Wed, 13 Jan 2016 01:32:20 +0000 (20:32 -0500)]
Fix some custom types.
* lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
* lisp/gnus/gnus.el (gnus-valid-select-methods):
* lisp/mail/rmail.el (rmail-get-coding-function):
* lisp/net/newst-treeview.el (newsticker-groups-filename):
* lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
* lisp/textmodes/tildify.el (tildify-space-predicates):
* lisp/url/url-tramp.el (url-tramp-protocols):
Fix custom types.
Glenn Morris [Wed, 13 Jan 2016 01:06:49 +0000 (20:06 -0500)]
Add some missing version tags.
* lisp/electric.el (electric-quote-comment)
(electric-quote-string, electric-quote-paragraph):
* lisp/epg-config.el (epg-gpgconf-program):
* lisp/rect.el (rectangle-preview):
* lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
* lisp/emacs-lisp/package.el (package-selected-packages)
(package-hidden-regexps):
* lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
* lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
* lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
(mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
(mml-smime-encrypt-to-self, mml2015-sign-with-sender)
(mml-smime-sign-with-sender, mml2015-always-trust)
(mml-secure-fail-when-key-problem, mml-secure-key-preferences):
* lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
(browse-url-conkeror-arguments):
* lisp/net/newst-reader.el (newsticker-download-logos):
* lisp/progmodes/gud.el (gud-guiler-command-name):
* lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
* lisp/progmodes/project.el (project-vc):
* lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
(python-shell-remote-exec-path, python-shell-first-prompt-hook)
(python-shell-completion-native-disabled-interpreters)
(python-shell-completion-native-enable)
(python-shell-completion-native-output-timeout)
(python-shell-completion-native-try-output-timeout):
* lisp/progmodes/xref.el (xref):
* lisp/term/screen.el (xterm-screen-extra-capabilities):
* lisp/term/xterm.el (xterm-max-cut-length):
Add missing version tags.
Glenn Morris [Wed, 13 Jan 2016 01:04:49 +0000 (20:04 -0500)]
* test/automated/core-elisp-tests.el
(core-elisp-tests-1-defvar-in-let): Add a custom type.
Glenn Morris [Wed, 13 Jan 2016 01:03:02 +0000 (20:03 -0500)]
; ChangeLog fix
Glenn Morris [Wed, 13 Jan 2016 00:01:12 +0000 (19:01 -0500)]
* src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
Remove comments that do not apply since 2005-08-09. (Bug#22349)
Paul Eggert [Tue, 12 Jan 2016 21:04:17 +0000 (13:04 -0800)]
Merge from gnulib
This mostly just changes "UTC" to "UTC0" for POSIX conformance.
It also updates to the latest version of texinfo.tex.
* build-aux/gitlog-to-changelog, build-aux/move-if-change:
* build-aux/update-copyright, doc/misc/texinfo.tex:
Update from gnulib.
Eli Zaretskii [Tue, 12 Jan 2016 19:29:28 +0000 (21:29 +0200)]
Update documentation of 'process-running-child-p'
* doc/lispref/processes.texi (Input to Processes): Document the
changes in return value of 'process-running-child-p'.
Eli Zaretskii [Tue, 12 Jan 2016 19:21:12 +0000 (21:21 +0200)]
Update documentation of 'deactivate-mark'.
* doc/lispref/markers.texi (The Mark): Document that
'deactivate-mark' is now buffer-local when set.
Eli Zaretskii [Tue, 12 Jan 2016 19:10:09 +0000 (21:10 +0200)]
Update documentation of 'completion-table-dynamic'
* doc/lispref/minibuf.texi (Programmed Completion): Document the
new optional argument to 'completion-table-dynamic'.
Eli Zaretskii [Tue, 12 Jan 2016 19:00:19 +0000 (21:00 +0200)]
Document changes in 'read-buffer' and 'read-buffer-function'
* doc/lispref/minibuf.texi (High-Level Completion): Document the
4th argument to 'read-buffer' and 'read-buffer-function'.
Eli Zaretskii [Tue, 12 Jan 2016 18:46:56 +0000 (20:46 +0200)]
; * etc/NEWS: Mark a couple of entries that are already documented.
Paul Eggert [Tue, 12 Jan 2016 17:09:27 +0000 (09:09 -0800)]
Fix time-stamp-time-zone bugs introduced in July
This fixes a bug introduced when the July changes to
format-time-string installed, as the changes were not
correctly handled in this module (Bug#22302).
Also, document time stamp time zones.
* lisp/time-stamp.el (time-stamp-time-zone): Document values better.
(time-stamp--format): New private function.
(time-stamp-string, time-stamp-string-preprocess)
(time-stamp-do-number): Use it.
* doc/emacs/files.texi (Time Stamps): Mention time zones.
* doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
Eli Zaretskii [Tue, 12 Jan 2016 16:41:58 +0000 (18:41 +0200)]
Make piping to subprocesses more robust on MS-Windows
* src/w32.c (sys_write): Don't write to a pipe more stuff than its
buffer can hold. Don't return -1 if something has been written to
the pipe. Zero out 'errno' before calling '_write', to avoid
returning a stale value. (Bug#22344)
* src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
* src/w32.c (pipe2): Use it to request a user-defined size for the
pipe being created.
* etc/NEWS: Mention 'w32-pipe-buffer-size'.
* doc/emacs/msdos.texi (Windows Processes): Document
'w32-pipe-buffer-size'.
Dmitry Gutov [Mon, 11 Jan 2016 21:17:49 +0000 (00:17 +0300)]
test/automated/vc-hg.el: Support out-of-tree build
* test/automated/vc-hg.el
(vc-hg-annotate-extract-revision-at-line-with-filename)
(vc-hg-annotate-extract-revision-at-line-with-both):
Don't refer to source-directory.
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
Michael Albinus [Mon, 11 Jan 2016 18:43:36 +0000 (19:43 +0100)]
Minor change in tramp-tests.el
* test/automated/tramp-tests.el (tramp-test29-vc-registered):
Use `dired-uncache' instead of a Tramp internal function.
Shakthi Kannan [Mon, 11 Jan 2016 18:17:43 +0000 (20:17 +0200)]
; * etc/NEWS: Update the js.el entry.
Peter Feigl [Mon, 11 Jan 2016 18:12:12 +0000 (20:12 +0200)]
* etc/HELLO: Add Armenian and Mongolian greetings.
(Bug#22346)
Copyright-paperwork-exempt: yes.
Alan Mackenzie [Mon, 11 Jan 2016 17:46:04 +0000 (17:46 +0000)]
Java Mode: Fontify identifiers in the presence of annotations.
* lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
Don't move point when the defun fails.
(c-forward-decl-or-cast-1): Correct a usage of match data.
* lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
(c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
removed variable.
* lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
Eli Zaretskii [Mon, 11 Jan 2016 16:05:40 +0000 (18:05 +0200)]
Avoid an infloop when we run out of memory
* src/alloc.c (garbage_collect_1): Don't bother saving and
restoring the echo-area message if we are GC'ing after running out
of memory. This avoids an infloop due to repeated attempts to
allocate memory for the cons cell needed to save the message,
which signals the memory-full error, which attempts to save the
echo-area message, which signals memory-full again, etc.
Eli Zaretskii [Mon, 11 Jan 2016 16:00:13 +0000 (18:00 +0200)]
Avoid unnecessary failures of auto-saving after fatal error
* src/w32.c (map_w32_filename): Avoid non-trivial system calls for
the benefit of FAT volumes if we are called as part of shutting
down due to a fatal error, which probably means we are trying to
auto-save the session.
* src/lread.c (check_obarray): Don't bother making the obarray
valid if we are shutting down due to a fatal error. This avoids
interfering with auto-saving the crashed session.
Paul Eggert [Mon, 11 Jan 2016 05:41:59 +0000 (21:41 -0800)]
Simplify HAVE_MODULES use in mark_maybe_pointer
* src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
so that later code can use 'if' rather than '#ifdef'.
(mark_maybe_pointer): Simplify based on HAVE_MODULES now
always working.
Paul Eggert [Mon, 11 Jan 2016 05:39:55 +0000 (21:39 -0800)]
Revert attempt to use 'noexcept' in typedef
This use of 'noexcept' runs afoul of the C++11 standard.
Problem reported by Philipp Stephani in:
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
* src/emacs-module.c (emacs_finalizer_function):
Move this typedef here ...
* src/emacs-module.h: ... from here, and use only the C
version of the typedef. The typedef is now private since it
is never used in the .h file now and anyway it seemed to be
causing more confusion than it cured.
(make_user_ptr, get_user_finalizer, set_user_finalizer):
Open-code the type instead.
Eli Zaretskii [Sun, 10 Jan 2016 18:22:01 +0000 (20:22 +0200)]
Update documentation of 'indirect-function'
* doc/lispref/eval.texi (Function Indirection): Update the
documentation of 'indirect-function'.
Eli Zaretskii [Sun, 10 Jan 2016 18:15:10 +0000 (20:15 +0200)]
; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
Eli Zaretskii [Sun, 10 Jan 2016 18:05:46 +0000 (20:05 +0200)]
Update documentation for obsoleting 'syntax-begin-function'
* doc/lispref/syntax.texi (Position Parse): Undocument
'syntax-begin-function' that is now obsolete.
Eli Zaretskii [Sun, 10 Jan 2016 17:59:17 +0000 (19:59 +0200)]
; * etc/NEWS: Mark documented and not-to-be-documented entries.
Eli Zaretskii [Sun, 10 Jan 2016 17:24:54 +0000 (19:24 +0200)]
Document new features if Eshell
* doc/misc/eshell.texi (Input/Output): Document the new
'#<bufname>' syntax.
(Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
Disable "Key Index" generation, as there are no @kindex entries in
this manual.
Eli Zaretskii [Sun, 10 Jan 2016 16:30:10 +0000 (18:30 +0200)]
; * etc/NEWS: Update EUDC entries.
Michael Albinus [Sun, 10 Jan 2016 12:07:21 +0000 (13:07 +0100)]
Handle too long commands in Tramp
* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
(tramp-do-file-attributes-with-ls): Send sequence of commands, in
order to not exceed shell command line limit.
* test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
(tramp--test-utf8): Include Arabic file name, again.
Paul Eggert [Sun, 10 Jan 2016 08:51:10 +0000 (00:51 -0800)]
* .gitattributes: *.cur and *.pif are binary files too.
Stefan Monnier [Sun, 10 Jan 2016 05:32:13 +0000 (00:32 -0500)]
* src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
Stefan Monnier [Sun, 10 Jan 2016 05:31:29 +0000 (00:31 -0500)]
* sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
* lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
within $(...).
* test/indent/shell.sh: Add corresponding test.
Stefan Monnier [Sun, 10 Jan 2016 02:15:12 +0000 (21:15 -0500)]
* src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
(mark_memory): Simplify loop. Don't assume a pointer-sized word can be
cast to Lisp_Object.
Dmitry Gutov [Sun, 10 Jan 2016 01:38:34 +0000 (04:38 +0300)]
; Account for spaces before the filename
Dmitry Gutov [Sun, 10 Jan 2016 01:09:42 +0000 (04:09 +0300)]
Use short date for 'hg annotate', and output the author
* lisp/vc/vc-hg.el (vc-hg-annotate-command):
Change '-d' to '-dq'. (Bug#21805)
(vc-hg-annotate-switches): Default to "-u" "--follow".
(vc-hg-annotate-re): Update to recognize the short date format
and the optional username.
(vc-hg-annotate-time)
(vc-hg-annotate-extract-revision-at-line): Update accordingly.
* test/automated/vc-hg.el: New file.
Paul Eggert [Sun, 10 Jan 2016 00:15:01 +0000 (16:15 -0800)]
Spelling fix
Eli Zaretskii [Sat, 9 Jan 2016 20:05:41 +0000 (22:05 +0200)]
; * etc/NEWS: Fix the Xref entries that got separated.
Eli Zaretskii [Sat, 9 Jan 2016 19:45:33 +0000 (21:45 +0200)]
Document user-level functions in project.el
* lisp/progmodes/project.el (project-find-file)
(project-or-external-find-file): Add doc strings.
Eli Zaretskii [Sat, 9 Jan 2016 19:12:46 +0000 (21:12 +0200)]
Document the user-level features of the Xref package
* doc/emacs/maintaining.texi (Maintaining): Add a list of
described features.
(Xref): New section, made out of thoroughly rewritten "Tags"
section.
(Find Identifiers, Looking Up Identifiers, Xref Commands)
(Identifier Search, List Identifiers): New subsections,
incorporating the old tags commands and the new xref commands.
(Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
Section and subsections demoted to a lower level.
* doc/emacs/search.texi (Search):
* doc/emacs/windows.texi (Pop Up Window):
* doc/emacs/frames.texi (Creating Frames):
* doc/emacs/programs.texi (Imenu, Symbol Completion):
* doc/emacs/building.texi (Grep Searching):
* doc/emacs/dired.texi (Operating on Files):
* doc/emacs/glossary.texi (Glossary): All references to tags changed.
Stefan Monnier [Sat, 9 Jan 2016 17:50:10 +0000 (12:50 -0500)]
* loading.texi: Add `define-type' entry for load-history
* doc/lispref/loading.texi (Where Defined): Remove incorrect
cl-defmethod description, and add missing define-type entry.
Eli Zaretskii [Sat, 9 Jan 2016 17:06:52 +0000 (19:06 +0200)]
Improve doc strings and prompts in xref.el
* lisp/progmodes/xref.el (xref-backend-functions)
(xref-find-definitions): Doc fixes.
(xref-query-replace): Doc fix. Improve prompts for arguments.
Alan Mackenzie [Sat, 9 Jan 2016 15:18:29 +0000 (15:18 +0000)]
Allow the use of `font-lock-extend-region-multiline' in CC Mode.
* lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
`font-lock-extend-regions-wholelines' from
`font-lock-extend-region-functions' rather than setting the latter to
nil.
Michael Albinus [Sat, 9 Jan 2016 12:55:02 +0000 (13:55 +0100)]
Fix coding system for Tramp on OS X.
* lisp/net/tramp-compat.el: Require ucs-normalize.
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Set coding system to `utf-8-hfs' for Mac OS X.
* test/automated/tramp-tests.el (tramp-test29-vc-registered):
Flush directory properties when needed.
(tramp--test-utf8): Include Chinese file name, again.
Eli Zaretskii [Sat, 9 Jan 2016 10:09:13 +0000 (12:09 +0200)]
; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
Eli Zaretskii [Sat, 9 Jan 2016 08:55:35 +0000 (10:55 +0200)]
Update 'load-history' docs
* doc/lispref/loading.texi (Where Defined): Update the list of
forms in 'load-history' by adding the forms created for the
'cl-generic' generics. (Bug#21422)
Paul Eggert [Fri, 8 Jan 2016 22:53:10 +0000 (14:53 -0800)]
Fix (error ...) error
Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
* lisp/vc/add-log.el (change-log-goto-source): Fix typos
introduced in my Aug 28 change, where I got confused by the
two meanings of (error ...).
Alan Mackenzie [Fri, 8 Jan 2016 22:42:47 +0000 (22:42 +0000)]
Correctly analyze brace arguments in templated C++ function declarations.
* lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
POS and LIMIT parameters, like the other c-go-list-* functions have.
* lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
for a ?\( rather than a ?<. (c-looking-at-inexpr-block): Handle names
followed by template specifiers.
Glenn Morris [Fri, 8 Jan 2016 21:31:56 +0000 (16:31 -0500)]
* lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
Glenn Morris [Fri, 8 Jan 2016 21:28:09 +0000 (16:28 -0500)]
* lisp/ffap.el (ffap-latex-mode): Avoid free variable.
Mark Oteiza [Fri, 8 Jan 2016 17:19:09 +0000 (12:19 -0500)]
* lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
Alan Mackenzie [Fri, 8 Jan 2016 14:41:58 +0000 (14:41 +0000)]
Respect fontification region calculated by major mode. Fixes bug #22316.
* lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
fontification region has been calculated by a function on
font-lock-extend-after-change-region-function use this region rather than
changing the end position to somewhere else.