Commit graph

1337 commits

Author SHA1 Message Date
Glenn Morris
ef6132c55f Fix recent bootstrap issue by moving string-to-list
* lisp/international/mule-util.el (string-to-list, string-to-vector):
Move from here...
* lisp/subr.el (string-to-list, string-to-vector): ...to here.
The implementation is trivial and at least string-to-list
has ended up being needed early during bootstrap.
2017-02-12 19:02:56 -08:00
Stefan Monnier
f74d496478 * lisp/subr.el (string-make-unibyte, string-make-multibyte): Obsolete. 2017-01-30 13:02:18 -05:00
Mark Oteiza
43eba49553 Move cXXXr and cXXXXr to subr.el
* etc/NEWS: Mention new core Elisp.
* doc/lispref/lists.texi (List Elements): Document and index the new
functions.
* doc/misc/cl.texi (List Functions): Change "defines" to "aliases".
* lisp/subr.el (caaar, caadr, cadar, caddr, cdaar, cdadr, cddar)
(cdddr, caaaar caaadr, caadar, caaddr, cadaar, cadadr, caddar):
(cadddr, cdaaar, cdaadr, cdadar, cdaddr, cddaar, cddadr, cdddar):
(cddddr): New functions.
* lisp/emacs-lisp/cl-lib.el (cl-caaar, cl-caadr, cl-cadar, cl-caddr):
(cl-cdaar, cl-cdadr, cl-cddar cl-cdddr, cl-caaaar cl-caaadr):
(cl-caadar, cl-caaddr, cl-cadaar, cl-cadadr, cl-caddar, cl-cadddr):
(cl-cdaaar, cl-cdaadr, cl-cdadar, cl-cdaddr, cl-cddaar, cl-cddadr):
(cl-cdddar, cl-cddddr): Alias to new subr functions.
* lisp/emacs-lisp/cl.el (cl-unload-function): Remove cXXXr and cXXXXr
elements.
2017-01-25 14:21:10 -05:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Stefan Monnier
a6063ffe5a * src/data.c (Fmake_variable_frame_local): Remove
* src/lisp.h (struct Lisp_Buffer_Local_Value): Remove `frame_local'.

* src/data.c (swap_in_symval_forwarding, set_internal)
(set_symbol_trapped_write, make_blv, Fmake_variable_buffer_local)
(Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
Don't pay attention to ->frame_local any more.
(syms_of_data): Remove Qtrapping_frame_local and don't defsubr
Smake_variable_frame_local.

* etc/NEWS (Incompatible Lisp Changes in Emacs 26.1): Announce removal
of make-variable-frame-local.

* lisp/help-fns.el (describe-variable): Don't handle the now impossible
frame-local case.

* lisp/subr.el (make-variable-frame-local): Remove obsolescence data.

* src/frame.c (store_frame_param):
* src/eval.c (specbind): Don't pay attention to ->frame_local any more.

* src/widget.c (first_frame_p): Remove, unused.
2016-12-21 15:07:43 -05:00
Clément Pit--Claudel
27cada035a Move backtrace to ELisp using a new mapbacktrace primitive
* src/eval.c (get_backtrace_starting_at, backtrace_frame_apply)
(Fmapbacktrace, Fbacktrace_frame_internal): New functions.
(get_backtrace_frame, Fbacktrace_debug): Use `get_backtrace_starting_at'.

* lisp/subr.el (backtrace--print-frame): New function.
(backtrace): Reimplement using `backtrace--print-frame' and `mapbacktrace'.
(backtrace-frame): Reimplement using `backtrace-frame--internal'.

* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Pass a base to
`mapbacktrace' instead of searching for "(debug" in the output of
`backtrace'.

* test/lisp/subr-tests.el (subr-test-backtrace-simple-tests)
(subr-test-backtrace-integration-test): New tests.

* doc/lispref/debugging.texi (Internals of Debugger): Document
`mapbacktrace' and missing argument BASE of `backtrace-frame'.
2016-12-12 17:41:27 -05:00
Eli Zaretskii
2412a1fc05 Support concurrency in Emacs Lisp
Merge branch 'test-concurrency'

* src/thread.c:
* src/thread.h:
* src/systhread.c:
* src/systhread.h: New files.
* src/xgselect.c (xg_select): Avoid using SAFE_NALLOCA and use
xnmalloc unconditionally.
* src/window.c (struct save_window_data): Rename current_buffer to
f_current_buffer.
* src/w32proc.c (sys_select): Change the function signature to
closer fit 'pselect' on Posix hosts.
* src/search.c:
* src/regex.h: Convert some globals to macros that reference
thread-specific values.
* src/process.c (pset_thread, add_non_keyboard_read_fd)
(add_process_read_fd, add_non_blocking_write_fd)
(recompute_input_desc, compute_input_wait_mask)
(compute_non_process_wait_mask, compute_non_keyboard_wait_mask)
(compute_write_mask, clear_waiting_thread_info)
(update_processes_for_thread_death, Fset_process_thread)
(Fprocess_thread): New functions.
(enum fd_bits): New enumeration.
(fd_callback_data): Add 'thread' and 'waiting_thread', rename
'condition' to 'flags'.
(set_process_filter_masks, create_process, create_pty)
(Fmake_serial_process, finish_after_tls_connection)
(connect_network_socket, deactivate_process)
(server_accept_connection, wait_reading_process_output)
(Fcontinue_process, Fstop_process, keyboard_bit_set)
(add_timer_wait_descriptor, add_keyboard_wait_descriptor)
(delete_keyboard_wait_descriptor): Use the new functions instead
of manipulating fd flags and masks directly.
(syms_of_process): Defsubr the new primitives.
* src/print.c (print_object): Print threads, mutexes, and
conditional variables.
* src/lisp.h (enum pvec_type): New values PVEC_THREAD, PVEC_MUTEX,
and PVEC_CONDVAR.
(XTHREAD, XMUTEX, XCONDVAR, THREADP, MUTEXP, CONDVARP)
(CHECK_THREAD, CHECK_MUTEX, CHECK_CONDVAR): New inline functions.
(XSETTHREAD, XSETMUTEX, XSETCONDVAR): New macros.
(struct handler): Add back byte_stack.  Rename lisp_eval_depth to
f_lisp_eval_depth.
* src/eval.c (specpdl_kind, specpdl_arg, do_specbind)
(rebind_for_thread_switch, do_one_unbind)
(unbind_for_thread_switch): New functions.
(init_eval): 'handlerlist' is not malloc'ed.
(specbind): Call do_specbind.
(unbind_to): Call do_one_unbind.
(mark_specpdl): Accept 2 arguments.
(mark_specpdl): Mark the saved value in a let-binding.
* src/emacs.c (main): Call init_threads_once, init_threads, and
syms_of_threads.
* src/data.c (Ftype_of): Support thread, mutex, and condvar
objects.
(Fthreadp, Fmutexp, Fcondition_variable_p): New functions.
(syms_of_data): DEFSYM and defsubr new symbols and primitives.
* src/bytecode.c (struct byte_stack, FETCH, CHECK_RANGE)
(BYTE_CODE_QUIT): Add back.
(exec_byte_code): Add back byte stack manipulation.
* src/alloc.c (cleanup_vector): Handle threads, mutexes, and
conditional variables.
(mark_stack): Now extern; accept additional argument 'bottom'.
(flush_stack_call_func): New function.
(garbage_collect_1): Call mark_threads and unmark_threads.  Don't
mark handlers.
* src/.gdbinit (xbytecode): Add back.

* test/src/thread-tests.el: New tests.
* test/src/data-tests.el (binding-test-manual)
(binding-test-setq-default, binding-test-makunbound)
(binding-test-defvar-bool, binding-test-defvar-int)
(binding-test-set-constant-t, binding-test-set-constant-nil)
(binding-test-set-constant-keyword)
(binding-test-set-constant-nil): New tests.

* doc/lispref/processes.texi (Processes and Threads): New
subsection.
* doc/lispref/threads.texi: New file
* doc/lispref/elisp.texi (Top): Include it.
* doc/lispref/objects.texi (Thread Type, Mutex Type)
(Condition Variable Type): New subsections.
(Type Predicates): Add thread-related predicates.
* doc/lispref/objects.texi (Editing Types):
* doc/lispref/elisp.texi (Top): Update higher-level menus.

* etc/NEWS: Mention concurrency features.
2016-12-10 18:54:43 +02:00
Glenn Morris
e63c489dd4 Minor fix for symbol-file
* lisp/subr.el (symbol-file): Avoid false matches with "require"
elements in load-history.  (Bug#25109)
2016-12-07 23:18:36 -08:00
Eli Zaretskii
de4624c99e Merge branch 'concurrency'
Conflicts (resolved):
	configure.ac
	src/Makefile.in
	src/alloc.c
	src/bytecode.c
	src/emacs.c
	src/eval.c
	src/lisp.h
	src/process.c
	src/regex.c
	src/regex.h
2016-12-04 19:59:17 +02:00
Thierry Volpiatto
43ec6efa2b Reuse already existing lisp symbols for ignore_event (bug#19547).
* lisp/subr.el (while-no-input-ignore-events): Use them instead.
* src/keyboard.c (kbd_buffer_store_buffered_event):
Use help-echo for HELP_EVENT, iconify-frame for ICONIFY_EVENT,
and make-frame-visible for DEICONIFY_EVENT.
(syms_of_keyboard): Remove unneeded symbols.
2016-11-28 06:59:49 +01:00
Thierry Volpiatto
d9dd884c7c Allow configuring which event throw-on-input should ignore (bug#19547).
* src/keyboard.c (kbd_buffer_store_buffered_event):
Translate event to corresponding symbol from `while-no-input-ignore-events`
and check them with Fmemq.
(syms_of_keyboard): Declare new lisp variable `while-no-input-ignore-events`
and its symbols.

* lisp/subr.el (while-no-input-ignore-events): Add default values.

* doc/lispref/commands.texi (Event Input Misc):
Document while-no-input-ignore-events.
* etc/NEWS: Same.
2016-11-27 21:48:07 +01:00
Glenn Morris
67df076793 ; Replace "25.2" with "26.1" where appropriate, which is almost everywhere
Ref:
http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00692.html
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01215.html
2016-11-17 22:50:40 -08:00
Mark Oteiza
73d47d2219 Remove obsolete default-FOO variables
* etc/NEWS: Indicate the removed variables.
* lisp/emacs-lisp/edebug.el (edebug-outside-mark): Fix comment.
* lisp/subr.el (default-mode-line-format, default-header-line-format):
(default-line-spacing, default-abbrev-mode, default-ctl-arrow):
(default-truncate-lines, default-left-margin, default-tab-width):
(default-case-fold-search, default-left-margin-width):
(default-right-margin-width, default-left-fringe-width):
(default-right-fringe-width, default-fringes-outside-margins):
(default-scroll-bar-width, default-vertical-scroll-bar):
(default-indicate-empty-lines, default-indicate-buffer-boundaries):
(default-fringe-indicator-alist, default-fringe-cursor-alist):
(default-scroll-up-aggressively, default-scroll-down-aggressively):
(default-fill-column, default-cursor-type):
(default-cursor-in-non-selected-windows):
(default-buffer-file-coding-system, default-major-mode):
(default-enable-multibyte-characters): Remove obsolete declarations.
* src/buffer.c (default-mode-line-format, default-header-line-format):
(default-line-spacing, default-abbrev-mode, default-ctl-arrow):
(default-truncate-lines, default-left-margin, default-tab-width):
(default-case-fold-search, default-left-margin-width):
(default-right-margin-width, default-left-fringe-width):
(default-right-fringe-width, default-fringes-outside-margins):
(default-scroll-bar-width, default-vertical-scroll-bar):
(default-indicate-empty-lines, default-indicate-buffer-boundaries):
(default-fringe-indicator-alist, default-fringe-cursor-alist):
(default-scroll-up-aggressively, default-scroll-down-aggressively):
(default-fill-column, default-cursor-type):
(default-cursor-in-non-selected-windows):
(default-buffer-file-coding-system, default-major-mode):
(default-enable-multibyte-characters): Remove.
* src/fileio.c (choose_write_coding_system): Fix comment.
* src/lisp.h (DEFVAR_BUFFER_DEFAULTS): Remove.
2016-11-07 21:40:05 -05:00
Mark Oteiza
949144c279 Remove some subr.el functions obsoleted in 22.1
* etc/NEWS: Document removed functions.  Also mention the "face"
variables that have been removed recently.
* lisp/subr.el (window-dot, set-window-dot, read-input, show-buffer):
(eval-current-buffer, string-to-int, insert-string, makehash): Remove.
2016-11-06 11:53:47 -05:00
Johan Bockgård
de75a1154e * lisp/subr.el (copy-tree): Handle vector in cdr. (Bug#24876) 2016-11-05 16:36:12 +01:00
Paul Eggert
ae0a1a890e Merge from origin/emacs-25
acae275 ; Spelling fixes
d8fac73 Update README for precompiled windows Emacs.
23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
f708cb2 Clarify doc string of 'transpose-sexps'
cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
bdc89eb Improve documentation of 'font-lock-remove-keywords'
4a0c590 Fix documentation of the command summary key
0221b7a Mark relocation workarounds with REL_ALLOC
2016-11-04 15:02:03 -07:00
Paul Eggert
6a20bd3579 Merge from origin/emacs-25
dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
9c247d2 Update category-table for Chinese characters
43986d1 Inhibit buffer relocation during regex searches
fee4cef Revert fixes to allocation of regex matching
2016-11-04 15:01:17 -07:00
Paul Eggert
acae275b27 ; Spelling fixes 2016-11-04 14:50:59 -07:00
Stefan Monnier
9c1cb8d595 * lisp/subr.el (set-transient-map): Exit for unbound events (bug#24755). 2016-10-26 15:29:02 -04:00
Paul Eggert
6df147c61a Merge from origin/emacs-25
8ad0d7d ; Fix quoting in etc/NEWS
6b9dee1 Change Tramp version to "2.2.13.25.2"
62f2684 * lisp/emacs-lisp/autoload.el (update-directory-autoloads): F...
b2f32e4 Don't scan compiled module files for autoloads
9a758b4 Fix Bug#24698
baa8ba4 * lisp/subr.el (start-process): Doc fix.  (Bug#24693)
e535ca4 Fix display of vc-dir CVS file statuses in subdirectories
12da149 Update URL of MS-Windows optional DLLs
2331056 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...
a4285bc * lisp/simple.el (process-menu-mode, list-processes--refresh)...
b0c447e * lisp/ibuf-ext.el (ibuffer-do-shell-command-file): Fix non-f...
cf3c19b * lisp/ibuffer.el (ibuffer): Improve 'other-window' case.  (B...

# Conflicts:
#	doc/misc/trampver.texi
#	etc/NEWS
#	lisp/net/tramp-sh.el
#	lisp/net/trampver.el
2016-10-23 02:48:50 -07:00
Eli Zaretskii
baa8ba4ed4 * lisp/subr.el (start-process): Doc fix. (Bug#24693) 2016-10-18 09:24:05 +03:00
Paul Eggert
97046e811c Merge from origin/emacs-25
4b347fe Clarify that doc fixes are okay in feature freeze
01669ad Avoid crashes when setting the cursor
f2144ee Restore 'command-debug-status' functionality
ec6e4b9 ; Minor addition to CONTRIBUTE
2016-10-10 07:35:32 -07:00
Philippe Vaucher
f2144eef19 Restore 'command-debug-status' functionality
* src/callint.c (Fcall_interactively): Bind command-debug-status
to nil.  This restores functionality inadvertently removed in
Emacs 25.1.  (Bug#24555)

* lisp/subr.el (command-debug-status): Declare obsolete.

* doc/lispref/debugging.texi (Internals of Debugger): Document
that 'command-debug-status' is obsolete.
2016-10-04 17:34:51 +03:00
Karl Fogel
e1b2918c7c Document yank behavior in the right place
* lisp/simple.el (yank): Document the handling of the
`yank-handled-properties' and `yank-excluded-properties' variables,
and the `yank-handler' text property.
(yank-pop): Refer to `yank' now (bug#286)

* lisp/subr.el (insert-for-yank): Refer to `yank' now.
(insert-for-yank-1): Refer to `insert-for-yank' now.

See this thread for discussion:

  https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
  From: Karl Fogel
  To: Emacs Devel
  Subject: Question about intended behavior of 'insert-for-yank-1'.
  Date: Mon, 12 Sep 2016 00:17:14 -0500
  Message-ID: <874m5lr92d.fsf@red-bean.com>
2016-10-03 14:13:43 -05:00
Karl Fogel
8cd975cebd Document yank behavior in the right place
* lisp/simple.el (yank): Document the handling of the
`yank-handled-properties' and `yank-excluded-properties' variables,
and the `yank-handler' text property.
(yank-pop): Refer to `yank' now (bug#286)

* lisp/subr.el (insert-for-yank): Refer to `yank' now.
(insert-for-yank-1): Refer to `insert-for-yank' now.

See this thread for discussion:

  https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
  From: Karl Fogel
  To: Emacs Devel
  Subject: Question about intended behavior of 'insert-for-yank-1'.
  Date: Mon, 12 Sep 2016 00:17:14 -0500
  Message-ID: <874m5lr92d.fsf@red-bean.com>
2016-10-02 19:47:27 -05:00
Philipp Stephani
7edaa77c5e Stop calling ‘byte-compile-log-warning’
For errors, use ‘byte-compile-report-error’ instead so that the error
is registered and causes compilation to fail (Bug#24359).

For warnings, use ‘byte-compile-warn’ instead so that
‘byte-compile-error-on-warn’ is honored (Bug#24360).

* lisp/emacs-lisp/macroexp.el (macroexp--funcall-if-compiled)
(macroexp--warn-and-return): Use ‘byte-compile-warn’ instead of
‘byte-compile-log-warning’.

* lisp/emacs-lisp/bytecomp.el (byte-compile-form, byte-compile-unfold-bcf)
(byte-compile-setq, byte-compile-funcall): Use
‘byte-compile-report-error’ instead of ‘byte-compile-log-warning’.
(byte-compile-log-warning): Convert comment to documentation
string.  Explain that the function shouldn’t be called directly.
(byte-compile-report-error): Add optional FILL argument.

* lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
(cconv--analyze-function, cconv-analyze-form): Use
‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.

* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand): Use
‘byte-compile-warn’ instead of ‘byte-compile-log-warning’.

* lisp/subr.el (add-to-list): Use ‘byte-compile-report-error’ instead
of ‘byte-compile-log-warning’.
(do-after-load-evaluation): Use ‘byte-compile-warn’ instead of
‘byte-compile-log-warning’.
2016-09-11 18:12:33 +02:00
Tino Calancha
5e84dcefb4 call-shell-region: New defun
Suggested by Stefan Monnier in Bug#22679.
* lisp/subr.el (call-shell-region): New defun; execute a command
in an inferior shell with the buffer region as input.
* lisp/simple.el (shell-command-on-region): Use it.
* lisp/gnus/message.el (message-do-fcc): Idem.
* doc/lispref/processes.texi: Document call-shell-region in the manual.
;* etc/NEWS: Add entry for this new function.
2016-08-25 22:17:56 +09:00
Paul Eggert
1a86b5d607 Merge from origin/emacs-25
d4c6774 Fix missing point information in undo
3a9d629 Avoid crashes when buffer modification hooks clobber match data
178b2f5 Note combine-and-quote-strings doesn't shell quote
dec7567 Explain when package-initialize isn't called
113d1e2 Fix escaping in sh-indent-after-continuation docstr
80e2044 ; * etc/NEWS: Improve previous change.
5bb9e6c ; * etc/NEWS: Document how to avoid horizontal scroll bars.
38f4b8e Clarify the documentation of back-references in replacements
2016-08-05 14:07:00 -07:00
Stefan Monnier
847140163a Fix Bug#24149
* lisp/subr.el (set-transient-map): Don't wait if MAP not present in
overriding-terminal-local-map.  (Bug#24149)
2016-08-04 23:42:07 +08:00
Stefan Monnier
682fdae7ef * lisp/subr.el (cancel-change-group): Reset cell in case of error
Since the setcdr/setcdr is supposed to be temporary, use unwind-protect
to make sure we properly undo the temporary change even in case of error.
2016-07-26 13:14:50 -04:00
Lars Ingebrigtsen
ad90397c59 Move read-multiple-choice to subr-x.el
* lisp/faces.el (read-multiple-choice-face): Fix doc string.

* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Move here
from subr.el.

* lisp/gnus/message.el (subr-x): Ditto.

* lisp/net/nsm.el: Require subr-x for read-multiple-choice.

read-multiple-choice doesn't need to be in the dumped Emacs, so move
it to a less central file.
2016-07-22 11:08:21 +02:00
Noam Postavsky
178b2f5909 Note combine-and-quote-strings doesn't shell quote
* doc/lispref/processes.texi (Shell Arguments):
* lisp/subr.el (combine-and-quote-strings): Add a note that
combine-and-quote-strings doesn't protect arguments against shell
evaluation (Bug #20333).
2016-07-03 15:05:20 -04:00
Dmitry Antipov
4bd3503991 Cleanup around mature character manipulation functions
* lisp/international/mule-diag.el (decode-codepage-char): Remove.

* lisp/ldefs-boot.el (toplevel): Adjust accordingly.

* lisp/subr.el (toplevel): Do not advertise calling conventions
for 'decode-char' and 'encode-char'.

* src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
2016-06-30 08:37:46 +03:00
Leo Liu
0214011cc2 Deprecations (bug#23850)
* lisp/subr.el (string-to-unibyte, string-as-unibyte,
string-to-multibyte, string-as-multibyte): Make obsolete.
2016-06-26 09:59:16 +08:00
Paul Eggert
68cb71c092 Merge from origin/emacs-25
9ae514a * etc/AUTHORS: Update the AUTHORS file
3ca428e add entries to authors.el
66d556b Fix eldoc-related freezes in python mode
d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
a813487 Fix undo boundary in recursive edit (Bug#23632)
1f85b7c Doc fixes re alist-get.  (Bug#23548)
ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
2016-06-19 00:47:00 +02:00
Glenn Morris
1f85b7ca03 Doc fixes re alist-get. (Bug#23548)
* lisp/subr.el (alist-get): Doc fix.
* doc/lispref/lists.texi (Association Lists): Improve alist-get.
; * etc/NEWS: Related edit.
2016-06-07 19:59:37 -04:00
Paul Eggert
2aa6b47e3e Merge from origin/emacs-25
6e3adf8 Fix crash in syntax.c after GC
973ce5a Improve squiggly heredoc support in non-SMIE Ruby mode
9d5cceb Fix doc string quoting
0b33a23 Fix mouse dragging of vertical dividers with scroll bars on l...
a5d05f4 * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
2016-06-07 09:34:27 -07:00
Stephen Berman
9d5ccebeba Fix doc string quoting
* lisp/files.el (shell-quote-wildcard-pattern):
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/subr.el (replace-regexp-in-string):
* lisp/view.el (view-mode):
* src/nsfns.m (syms_of_nsfns):
* src/syntax.c (Fbackward_prefix_chars):
Fix quoting problems in doc strings (Bug#23696).
2016-06-06 09:30:22 -07:00
Paul Eggert
25cc0f2aad Merge from origin/emacs-25
788c9b6 ; Spelling fix
25c4a30 * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-li...
0992ec3 Correct cl-flet usage (Bug#22317)
50caae3 Release MH-E manual version 8.6
602bb40 Update MH-E's documentation about HTML renderers
89018f0 Fx the we->the typo
845ee57 Restore frames into the current display by default
ee28b4c * lisp/recentf.el (recentf-open-files-item): Quick fix for (b...
01c3cd1 etc/TODO: Remove out-of-place issue
5e18486 Clarify doc string of 'file-name-sans-extension'
bffda22 Fix the MSDOS build
f907f98 * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Ca...
1a2ffd0 * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23...
f7ffc4b Fix infloop in 'number-sequence'
4ab2673 ; Spelling and punctuation fixes in comments
71c152e * lisp/emacs-lisp/find-func.el (find-function-library):
2016-05-31 08:07:41 -07:00
Paul Eggert
66cd9187e3 Don’t document declare-function internals
Suggested by Stefan Monnier in:
http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00618.html
* doc/lispref/functions.texi (Declaring Functions):
* lisp/subr.el (declare-function):
* lisp/emacs-lisp/bytecomp.el:
(byte-compile-macroexpand-declare-function):
Document as (fn file &optional arglist fileonly)
even though it is really (fn file &rest args).
2016-05-27 18:17:04 -07:00
Paul Eggert
1681634346 ; Add comment for declare-function 2016-05-27 12:45:41 -07:00
Paul Eggert
b342815c0a Improve define-function omitted-arg documentation
* doc/lispref/functions.texi (Declaring Functions):
* lisp/subr.el (declare-function):
Be clearer when documenting omitted args for define-function.
2016-05-27 09:47:19 -07:00
Stefan Monnier
84f431224c * lisp/subr.el (definition-prefixes): Expand docstring
* lisp/emacs-lisp/autoload.el (autoload--split-prefixes):
Remove unused function.
2016-05-27 12:33:57 -04:00
Eli Zaretskii
f7ffc4b7d3 Fix infloop in 'number-sequence'
* lisp/subr.el (number-sequence): Avoid overflow leading to an
infloop.  (Bug#23627)

* test/automated/subr-tests.el (number-sequence-test): New test.
2016-05-27 12:17:15 +03:00
Paul Eggert
f865e2f1e8 Fix byte-compiler pacification for declare-function
Problem reported by Michael Heerdegen in:
http://lists.gnu.org/archive/html/emacs-devel/2016-05/msg00590.html
* lisp/emacs-lisp/bytecomp.el:
(byte-compile-macroexpand-declare-function):
Revert signature to previous value.
* lisp/subr.el (declare-function): Change signature to
match the reverted signature used in the byte compiler.
2016-05-26 19:10:47 -07:00
Stefan Monnier
e971ce6de2 Make autoloads populate a new definition-prefixes table
* lisp/subr.el (definition-prefixes): New hash table.
(register-definition-prefixes): New function.

* lisp/emacs-lisp/autoload.el (autoload-compute-prefixes): New var.
(autoload--split-prefixes-1, autoload--split-prefixes)
(autoload--make-defs-autoload): New functions.
(autoload-defs-autoload-max-size, autoload-popular-prefixes): New vars.
(autoload-generate-file-autoloads): Obey autoload-compute-prefixes.
(update-directory-autoloads): Don't touch loaddefs.el if the set of
autoloads hasn't changed (i.e. if only the timestamp would change).

* lisp/loadup.el: Purify definition-prefixes.

* lisp/w32-fns.el: Keep name space clean.
(w32-set-default-process-coding-system): Rename from
set-default-process-coding-system.
(w32-set-system-coding-system): Rename from set-w32-system-coding-system.
2016-05-25 22:58:18 -04:00
Paul Eggert
639fd22e29 Pacify byte-compiler for with-wrapper-hook
* lisp/subr.el (subr--with-wrapper-hook-no-warnings):
New macro, split out from with-wrapper-hook.
* lisp/abbrev.el (abbrev--default-expand):
* lisp/minibuffer.el (completion--in-region):
* lisp/simple.el (buffer-substring--filter):
* lisp/subr.el (with-wrapper-hook):
Use it.
2016-05-18 00:49:30 -07:00
Alan Mackenzie
2eb6817ba9 Add :after-hook facility to define-derived-mode.
This allow a form to be evaluated _after_ a major mode's hooks have been run.
It is needed to solve some problems in CC Mode, including bug #16759 and
bug #23476.

* lisp/emacs-lisp/derived.el (define-derived-mode): introduce the new argument
`:after-hook', and generate the requisite code for it.
(derived-mode-make-docstring): Take account of the possibility of :after-hook.

* lisp/subr.el (delayed-after-hook-forms): New variable.
(run-mode-hooks): As the last thing evaluate the forms in
delayed-after-hook-forms.

* doc/lispref/modes.texi (Derived Modes): Document :after-hook.
(Mode Hooks): Document the new feature in run-mode-hooks.

* etc/NEWS: Note the new feature.
2016-05-08 13:24:20 +00:00
Paul Eggert
89ce83b202 Merge from origin/emacs-25
50650cb Doc fixes for fclist and grep
5e814e0 Minor doc fixes for quoting
3347a73 `nreverse' the marker pairs list
1a4127d Use save-excursion in xref-location-marker more
ab3ba91 shell-quote-argument DIR when appropriate
922c7a3 Rework xref-query-replace-in-results
3fe3510 * lisp/replace.el (query-replace-read-from): Use minibuffer-w...
0932b94 Fix todo-mode bug involving archived items (bug#23447)
e68ad1f ; * etc/NEWS: Tiny edit. (Bug#23432)
adc80b7 ; * test/automated/xref-tests.el: Add copyright and license.
4d8fd9c Handle "empty line" regexp in xref searches
f559b37 Add tests for xref-collect-matches
6428aa0 Use grep-find-ignored-directories instead of vc-directory-exc...
6f82d8e Clear buffer-undo-list when showing xrefs
c68a091 Note the quote translation in `message' in section "incompati...
52f86a7 * etc/NEWS: Mention (message "%s" (format ...)).
93703c5 (Common Keywords): Correct what missing :group means
79e5800 Improve documentation of Dired's 'A' and 'Q' commands
2ea2a2f Doc fixes for quoting
8544b98 posnp doc clarification
805204f Mention what a missing :group does
ec554d7 Fix documentation of dired-aux search/replace commands
2016-05-05 23:11:11 -07:00