Commit graph

5606 commits

Author SHA1 Message Date
Stefan Monnier
53c29c4d3c * lisp/emacs-lisp/gv.el (gv-define-setter): Silence compiler warning
Code placed in the `gv-expander` property will presumably only be used
when gv is loaded (bug#14529).
2018-04-18 15:56:15 -04:00
Lars Ingebrigtsen
6f572972d1 Add text-property-search-forward' and -backward'
* doc/lispref/text.texi (Property Search): Document
`text-property-search-forward' and `text-property-search-backward'.

* lisp/emacs-lisp/text-property-search.el: New file.
2018-04-17 18:53:23 +02:00
Eric Abrahamsen
ffbb4e8d54 Further fix to eieio-persistent
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
  Make handling of hash tables and vectors recursive. This is
  necessary because the write process, in `eieio-override-prin1' is
  also recursive. With any luck, this will be the last fix of its
  kind. If that's true, cherry-pick to Emacs 26.2 later on.
2018-04-13 10:56:55 -07:00
Basil L. Contovounesios
3d6fa0b1e0 Support list of default values in completing-read-multiple
* lisp/emacs-lisp/crm.el (completing-read-multiple):
Consider head of DEF argument when specified as a list,
as per completing-read-default. (bug#30072)
2018-04-12 23:36:45 +03:00
Glenn Morris
8f2935a49c Merge from origin/emacs-26
f674c89 ; * ChangeLog.3: Update.
80d868e * lisp/emacs-lisp/inline.el: Clarify apparent typos
9f54f28 ; * lisp/auth-source.el (auth-sources): Update the :version tag.
2018-04-10 07:50:48 -07:00
Stefan Monnier
80d868ed1c * lisp/emacs-lisp/inline.el: Clarify apparent typos 2018-04-04 21:15:36 -04:00
Glenn Morris
2f779d8ce8 Merge from origin/emacs-26
3109d2b (origin/emacs-26) ; * lisp/ldefs-boot.el: Update.
86825c4 * etc/NEWS: Remove temporary markup.
737d0a2 * Update etc/AUTHORS
fbd03ba * ChangeLog.3: Update
56794ac Fix Bug#31022
a231c33 Update "Calendrical Calculations" cites
1527235 ; * doc/lispref/compile.texi (Compilation Functions): Fix wor...
b07decd ; * doc/lispref/compile.texi (Compilation Functions): Fix typo
a64c11a Fix term.el rendering following a window resize (Bug#30544)
1e6f09a * files.el (auto-save-visited-mode): Don't prompt for filenames.
eb8b13f ; * etc/NEWS: Improve the entry about pinentry.el removal.
52501ec Quote a few backticks in docstrings.

Conflicts:
	etc/NEWS
	lisp/ldefs-boot.el
2018-04-04 07:50:45 -07:00
Gemini Lasswell
e3525385a8 Fix Testcover bug in handling of vectors containing dotted lists
* lisp/emacs-lisp/testcover.el (testcover-analyze-coverage-compose):
Handle dotted lists. Fix bug#30909.
* test/lisp/emacs-lisp/testcover-resources/testcases.el:
(dotted-list-in-vector-bug-30909): New test case.
(quotes-within-backquotes-bug-25316, dotted-backquote)
(quoted-backquote, backquoted-vector-bug-25316)
(vector-in-macro-spec-bug, backquoted-dotted-alist): Change
docstrings to mention analyzing code instead of reinstrumenting
it.
2018-04-02 09:38:12 -07:00
Stefan Monnier
7228488eff * lisp/emacs-lisp/debug.el (debug): Don't hang upon error in initial-frame. 2018-04-02 00:23:20 -04:00
Philipp Stephani
52501ec3f1 Quote a few backticks in docstrings.
* lisp/emacs-lisp/macroexp.el (macroexp-progn, macroexp-let*)
(macroexp-if): Quote backtick in docstrings.
2018-04-01 23:33:16 +02:00
Glenn Morris
d46811eeb5 Merge from origin/emacs-26
af1624f * lisp/net/shr.el (shr-browse-url): Doc fix.  (Bug#30957)
3a451bd ; * doc/emacs/msdos.texi: Fix wording of last change.
3bc1e2f Mention `key-description' as inverse of `kbd' (Bug#30942)
e50196e Document return value of pcase (Bug#30425)
8a2466f * doc/emacs/macos.texi: Tweak grammar and capitalization.
9db62bf Distinguish free from non-free OSes
ff49d86 * doc/emacs/misc.texi (Amusements): Avoid non-printing charac...
5bab671 Fix xrefs in pdf Emacs manual
2018-04-01 07:50:39 -07:00
Noam Postavsky
e50196e8a9 Document return value of pcase (Bug#30425)
* doc/lispref/control.texi (Pattern matching case statement):
* lisp/emacs-lisp/pcase.el (pcase): State that pcase returns nil if no
patterns match.
(pcase-exhaustive): State that an error is signaled if no patterns
match.
2018-03-31 00:50:37 -04:00
Paul Eggert
20b858ef13 Prefer \... to control chars in .el literals 2018-03-29 17:43:08 -07:00
Glenn Morris
7d8234c0cb Merge from origin/emacs-26
9bff405 (origin/emacs-26) * doc/misc/org.texi (Installation): Fix clo...
613c9a5 Update Org to v9.1.9
1b075a9 ; Fix some tiny doc typos
441fe20 De-obsolete `if-let' and `when-let'
8696038 * lisp/htmlfontify.el (hfy-begin-span-handler): Doc fix.
930f7b1 * doc/lispref/functions.texi (Defining Functions): Improve in...
95ccf50 Fix crash after frame is freed on macOS (bug#30800)
45d0475 More manual editing
2acb9f0 Minor manual changes changes
d481cba * lisp/calculator.el (calculator-paste-decimals): Add version.
7d6c7d0 ; Use GNU not Gnu in docs
1bc4def More proofreading of the Emacs manual

Conflicts:
	doc/misc/org.texi
	etc/NEWS
	lisp/org/org-clock.el
2018-03-28 09:38:22 -07:00
Glenn Morris
1b075a9e38 ; Fix some tiny doc typos 2018-03-27 17:02:04 -04:00
Stefan Monnier
7bc31c1cd4 (benchmark-run-compiled): Make it work like 'benchmark-run' again
* lisp/emacs-lisp/benchmark.el (benchmark-run): Add special case for
nil repetitions.
2018-03-27 16:19:40 -04:00
Stefan Monnier
c7d2a0dd76 * lisp/emacs-lisp/benchmark.el (benchmark-run): Allow variable.
(benchmark-run): Allow `repetitions` to be a variable rather than a constant.
2018-03-26 21:07:35 -04:00
Paul Eggert
66b7718901 Fix constant folding of overflows
This suppresses some byte-code optimizations that were invalid in
the presence of integer overflows, because they meant that .elc
files assumed the runtime behavior of the compiling platform, as
opposed to the runtime platform.  Problem reported by Pip Cet in:
https://lists.gnu.org/r/emacs-devel/2018-03/msg00753.html
* lisp/emacs-lisp/byte-opt.el (byte-opt--portable-max)
(byte-opt--portable-min): New constants.
(byte-opt--portable-numberp, byte-opt--arith-reduce)
(byte-optimize-1+, byte-optimize-1-): New functions.
(byte-optimize-plus, byte-optimize-minus, byte-optimize-multiply)
(byte-optimize-divide):	Avoid invalid optimizations.
(1+, 1-): Use new optimizers.
(byte-optimize-or, byte-optimize-cond): Simplify by using
remq instead of delq and copy-sequence.
2018-03-26 17:04:38 -07:00
Michael Heerdegen
441fe201ea De-obsolete if-let' and when-let'
For the following release it is planned to make `if-let*' and
`when-let*' aliases for `if-let' and `when-let'.  For now we revert
declaring `if-let' and `when-let' obsolete and tweak the docstrings.

* lisp/emacs-lisp/subr-x.el (if-let*, when-let*): Make docstrings
refer to those of `if-let' and `when-let'.
(if-let, when-let): De-obsolete.  Rewrite documentation.
2018-03-27 01:54:22 +02:00
Glenn Morris
86960383cf * lisp/htmlfontify.el (hfy-begin-span-handler): Doc fix. 2018-03-26 16:12:51 -04:00
Stefan Monnier
c23f2b5d9e Trivial fixes for last changes to package.el and marker.c
* lisp/emacs-lisp/package.el (package-quickstart): Add missing version.
* src/marker.c (verify_bytepos): Fix typo.
2018-03-26 14:29:49 -04:00
Stefan Monnier
6dfdf0c9e8 * lisp/emacs-lisp/package.el: New quickstart feature
(package--quickstart-pkgs): New var.
(package-activate-1): Obey and fill it.
(package-activate-all): New function.
(package-initialize): Call it.
Set package-initialized before activating the packages.
(package-installed-p): Make it work before package.el is initialized in
the case where min-version is not specified.
(package-install, package-delete): Refresh the quickstart if applicable.
(package-quickstart, package-quickstart-file): New vars.
(package--quickstart-maybe-refresh, package-quickstart-refresh):
New functions.

* lisp/startup.el (command-line): Use package-activate-all rather than
package-initialize.

* doc/lispref/package.texi (Packaging Basics):
* doc/emacs/package.texi (Package Installation):
* doc/lispref/os.texi (Startup Summary): Refer to package-activate-all.
2018-03-26 09:41:30 -04:00
Noam Postavsky
1d47d777ef Allow &rest' or &optional' without following variable (Bug#29165)
This is sometimes convenient when writing macros, so that the empty
variable case doesn't need to be handled specially.  Older versions of
Emacs accepted this in some cases (especially the interpreter in Emacs
25 and below was very accepting).

                            |   interpreted/compiled   |
| arglist                   | 25 & earlier | 26  | 27  |
|---------------------------+--------------+-----+-----|
| (&rest)                   | y/n          | n/n | y/y |
| (&rest &rest)             | y/n          | n/n | n/n |
| (&rest &rest x)           | y/n          | n/n | n/n |
| (&rest x &rest)           | y/n          | n/n | n/n |
| (&rest x &rest y)         | y/n          | n/n | n/n |
|---------------------------+--------------+-----+-----|
| (&optional)               | y/n          | n/n | y/y |
| (&optional &optional)     | y/n          | n/n | n/n |
| (&optional x &optional)   | y/n          | n/n | n/n |
| (&optional x &optional y) | y/y          | n/n | n/n |
|---------------------------+--------------+-----+-----|
| (&optional &rest)         | y/n          | n/n | y/y |
| (&optional x &rest)       | y/n          | n/n | y/y |
| (&optional &rest y)       | y/y          | n/n | y/y |
|---------------------------+--------------+-----+-----|
| (&rest &optional)         | y/n          | n/n | n/n |
| (&rest &optional y)       | y/n          | n/n | n/n |
| (&rest x &optional y)     | y/n          | n/n | n/n |

The values in the table above can be produced with the following code:

(with-current-buffer (get-buffer-create "*ck-args*")
  (erase-buffer)
  (dolist (arglist '((&rest)
                     (&rest &rest)
                     (&rest &rest x)
                     (&rest x &rest)
                     (&rest x &rest y)
                     (&optional)
                     (&optional &optional)
                     (&optional x &optional)
                     (&optional x &optional y)
                     (&optional &rest)
                     (&optional x &rest)
                     (&optional &rest y)
                     (&rest &optional)
                     (&rest &optional y)
                     (&rest x &optional y)))
    (insert
     (format "%c/%c\n"
             (condition-case err
                 (progn (funcall `(lambda ,arglist 'ok))
                        ?y)
               (error ?n))
             (condition-case err
                 (progn (byte-compile-check-lambda-list arglist)
                        ?y)
               (error ?n))))
    (display-buffer (current-buffer))))

* src/eval.c (funcall_lambda):
* lisp/emacs-lisp/bytecomp.el (byte-compile-check-lambda-list): Don't
check for missing variables after `&rest' and `&optional'.
* test/src/eval-tests.el (eval-tests--bugs-24912-and-24913)
(eval-tests-accept-empty-optional-rest): Update tests accordingly.
* etc/NEWS: Update announcement accordingly.
* doc/lispref/functions.texi (Argument List): Update manual to
indicate that variable names are optional.
2018-03-25 07:56:35 -04:00
Vibhav Pant
d73d1384aa
Fix byte-optimize-memq incorrectly optimizing some memq forms.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-memq): Call
  byte-optimize-and only for memq forms that can be optimized, use
  byte-optimize-predicate to optimize the final form.
2018-03-25 11:22:50 +05:30
Vibhav Pant
a140513acb
Optimize certain memq forms during byte-compilation.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-memq): New function.
  Set the byte optimizer function for memq to byte-optimize-memq.
2018-03-25 00:59:45 +05:30
Paul Eggert
42e7e267e5 Avoid Fortran-style floating-point optimization
When optimizing arithmetic operations, avoid optimizations that
are valid for mathematical numbers but invalid for floating-point.
For example, do not optimize (+ 1 v 0.5) to (+ v 1.5), as they may
not be the same due to rounding errors.  In general,
floating-point numbers cannot be constant-folded, since that would
make .elc files platform-dependent.
* lisp/emacs-lisp/byte-opt.el (byte-optimize-associative-math):
Do not optimize floats.
(byte-optimize-nonassociative-math, byte-optimize-approx-equal)
(byte-optimize-delay-constants-math, byte-compile-butlast)
(byte-optimize-logmumble):
Remove; no longer used.
(byte-optimize-minus): Do not optimize (- 0 x) to (- x).
(byte-optimize-multiply): Do not optimize (* -1 x) to (- x).
(byte-optimize-divide): Do not optimize (/ x -1) to (- x).
(logand, logior, logxor): Optimize with byte-optimize-predicate
instead of with byte-optimize-logmumble.
* test/lisp/emacs-lisp/bytecomp-tests.el:
(byte-opt-testsuite-arith-data): Add a couple of test cases.
2018-03-23 12:59:18 -07:00
Glenn Morris
dfea6d5a4a Quieten cl-lib related compiler warnings
* lisp/completion.el (cl-set-difference):
* lisp/files.el (map-merge-with, map-merge):
* lisp/emacs-lisp/radix-tree.el (map-apply): Declare.
* lisp/emacs-lisp/thunk.el: Load cl-lib at run-time, not
cl-macs at compile.
* lisp/gnus/gnus-group.el: Load cl-lib at run-time, not cl at compile.
* lisp/emacs-lisp/checkdoc.el, lisp/emacs-lisp/package.el
* lisp/gnus/gnus-sum.el, lisp/gnus/message.el, lisp/net/shr.el:
Load cl-lib at run-time.
* lisp/gnus/mml-sec.el (mml-signencrypt-style)
(mml-secure-cust-record-keys): Replace cl with cl-lib,
and load it at run-time.
* lisp/cedet/ede/linux.el, lisp/vc/vc-hg.el: Reorder requires.
2018-03-22 21:40:24 -07:00
Stefan Monnier
97b7e58c4d Try and fix the more obvious sources of bug#30635
* lisp/files.el (dir-locals-read-from-dir): Handle the easy cases
without loading `map`.

* lisp/emacs-lisp/bytecomp.el: Don't require cl-lib at run-time.
(byte-compile-and-folded): Avoid cl-every.
2018-03-22 18:18:26 -04:00
Paul Eggert
311bb33218 Fix byte-opt lists of pure functions etc.
This fixes a bug where a byte-compiler running on 64-bit Emacs
optimized (lsh -1 -1) to #x1fffffffffffffff, an optimization
that is incorrect for .elc files intended for either 32- or
64-bit Emacs.  While I was in the neighborhood, I noticed other
glitches in the lists of pure and side-effect-free functions, and
fixed the errors that I found.
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns):
Move some functions here from side-effect-and-error-free-fns,
since they can now signal errors.  The affected functions are
current-time-string, current-time-zone,
line-beginning-position, line-end-position.  Rename langinfo
to locale-info.  Add logcount.  Remove string-to-int.
(side-effect-and-error-free-fns): Remove minibuffer-window, a
function that can signal errors, and that is already in
side-effect-free-fns.
(pure-fns): Remove ash, lsh, and logb, since they are
platform-dependent and .elc files should be
platform-independent.  Add %, logand, logcount.  Sort.
Clarify what is meant by “pure”.
2018-03-22 11:29:02 -07:00
Glenn Morris
0afb436eeb Merge from origin/emacs-26
8ac621b (origin/emacs-26) Document DEFUN attributes
16d0cc7 * etc/NEWS: Add an entry for auth-source-pass.
cc1702f Fix the MSDOS build
daa9e85 Improve warning and error messages
7612dd1 Adjust eieio persistence tests for expected failure
f0cf4dc Let eieio-persistent-read read what object-write has written
40ad1ff Handle possible classtype values in eieio-persistent-read
4ec935d Add new tests for eieio persistence
47917d8 * lisp/gnus/gnus-cloud.el (gnus-cloud-synced-files): Fix doc ...
e32f352 * lisp/ibuf-ext.el (ibuffer-never-search-content-mode): Fix t...
5268f30 * doc/lispref/windows.texi (Selecting Windows): Fix a typo.
143b485 * doc/lispref/internals.texi (Writing Emacs Primitives): Fix ...
4ab4551 Firm up documentation of generalized variables
a5bf099 Improve documentation of Auto-Revert mode
ed05eaa Improvements in dired.texi

Conflicts:
	etc/NEWS
2018-03-22 07:50:37 -07:00
Eric Abrahamsen
daa9e853bd Improve warning and error messages
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-read,
  (eieio-persistent-validate/fix-slot-value): Indicate exactly what
  went wrong.
2018-03-22 10:46:09 +08:00
Eric Abrahamsen
f0cf4dc629 Let eieio-persistent-read read what object-write has written
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
  `object-write' may quote lists inside hash tables and vectors, so
  unquote those lists here.

This patch allows the eieio-persistent write/restore process to
perform a clean round trip. It only handles a very specific and
limited range of object structures, but at least the write and read
procedures match.
2018-03-22 10:46:08 +08:00
Eric Abrahamsen
40ad1ff327 Handle possible classtype values in eieio-persistent-read
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
  The function `eieio-persistent-slot-type-is-class-p' could return
  either a single class, or a list of classes.
2018-03-22 10:46:08 +08:00
Michael Albinus
1979bce57d Print top time consuming tests if advised
* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
New argument HIGH.  Print top-running tests.

* test/Makefile.in (check-doit): Use ${SUMMARIZE_TESTS}.

* test/README: Explain SUMMARIZE_TESTS.
2018-03-19 12:58:45 +01:00
Radon Rosborough
2db57579b0 Various follow-ups for early init file changes
* doc/emacs/custom.texi (Early Init File): Add more details about
which variables must be set in the early init file rather than the
regular init file.  See
https://lists.nongnu.org/archive/html/bug-gnu-emacs/2018-02/msg00827.html

* lisp/emacs-lisp/package.el (package-enable-at-startup): Update
docstring to note that packages are now made available before loading
the init file, rather than afterwards.  See
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00632.html
(package-load-list): Refer to "making available" rather than "loading"
for packages.  See
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00298.html

* lisp/startup.el (command-line): Call `custom-reevaluate-setting' on
predefined variables before loading the early init file and before
`package-initialize' is called.  This prevents
`Info-default-directory-list' from being unbound when
`package-initialize' tries to access it during startup.  See
https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00545.html

* lisp/emacs-lisp/package.el (package-initialize): Issue a warning
if called twice.
See: https://lists.gnu.org/archive/html/emacs-devel/2018-02/msg00626.html
     https://lists.gnu.org/archive/html/emacs-devel/2018-03/msg00301.html
2018-03-19 10:44:40 +02:00
Michael Albinus
9942734c75 * lisp/emacs-lisp/ert.el (ert-run-tests-batch): Print selector. 2018-03-18 10:01:37 +01:00
Michael Albinus
bcec2a8a39 Print test timings unconditionally
* lisp/emacs-lisp/ert.el (ert-batch-print-duration): Remove.
(ert-run-tests-batch): Adapt accordingly.

* test/Makefile.in:
* test/README: Remove TEST_PRINT_TEST_DURATION.
2018-03-17 10:25:22 +01:00
Glenn Morris
1c7db8aa30 Explicitly require cl-lib where needed
Rather than relying on the byte-compiler happening to use it.
* lisp/completion.el, lisp/ffap.el, lisp/loadhist.el:
* lisp/userlock.el, lisp/emacs-lisp/debug.el, lisp/emacs-lisp/rx.el:
* lisp/emacs-lisp/testcover.el, lisp/mail/rfc2231.el:
* lisp/net/newst-treeview.el, lisp/net/puny.el:
* lisp/net/tramp-archive.el, lisp/net/tramp-gvfs.el:
* lisp/net/tramp-sh.el, lisp/net/tramp-smb.el, lisp/org/org-ctags.el:
* lisp/org/org-macs.el, lisp/progmodes/grep.el:
* lisp/progmodes/perl-mode.el, lisp/progmodes/ruby-mode.el:
* lisp/textmodes/dns-mode.el, lisp/textmodes/mhtml-mode.el:
* lisp/vc/pcvs-parse.el: Explicitly require cl-lib as needed.
2018-03-16 20:41:17 -04:00
Michael Albinus
2d0853f62a Optimize "make check" and "make check-maybe"
* lisp/emacs-lisp/ert.el (ert-run-tests-batch): Print summary duration.

* test/Makefile.in (TEST_LOAD_EL): Set default to "no" for
targets all, check, and check-maybe.  (Bug#30807)

* test/README: Reflect recent changes in Makefile.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test99-libarchive-tests): Tag it :unstable.
2018-03-16 16:19:10 +01:00
Glenn Morris
5d968dbf6b More hydra.nixos.org logging for unfinished tests
* lisp/emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit):
Dump contents of any unfinished log files on hydra.nixos.org.
2018-03-14 14:30:39 -04:00
Michael Albinus
84a946a519 Extend ert to print duration of single tests
* lisp/emacs-lisp/ert.el (ert-test-result): New slot ´duration'.
(ert-run-or-rerun-test): Set it.
(ert-batch-print-duration): New defvar.
(ert-run-tests-batch): Print duration if needed.

* test/Makefile.in (TEST_PRINT_TEST_DURATION): New variable.

* test/README: Explain TEST_PRINT_TEST_DURATION.
2018-03-14 16:21:06 +01:00
Glenn Morris
8048caab1d Make compiler warn about use of obsolete hooks
* lisp/emacs-lisp/bytecomp.el (byte-compile-form):
Warn about using obsolete hooks.
2018-03-12 11:29:01 -07:00
Glenn Morris
f1c48b0ec5 Remove many items obsolete since Emacs 22.1
Emacs 22.1 was five major releases and over decade ago.
In bug reporting statistics, it's been absent for around 5 years.
Ref: https://debbugs.gnu.org/stats/emacs.html
This list can be reviewed before to the next release, but for
now hopefully this motivates any needed external updates.
* lisp/arc-mode.el (archive-mouse-extract):
* lisp/bookmark.el (bookmark-exit-hooks):
* lisp/comint.el (comint-use-prompt-regexp-instead-of-fields):
* lisp/cus-edit.el (custom-face-save-command):
* lisp/descr-text.el (describe-char-after):
* lisp/desktop.el (desktop-enable, desktop-basefilename)
(desktop-buffer-modes-to-save, desktop-buffer-misc-functions)
(desktop-buffer-handlers, desktop-load-default):
* lisp/dired-x.el (dired-omit-files-p):
* lisp/frame.el (new-frame, set-default-font, delete-frame-hook)
(blink-cursor):
* lisp/generic-x.el (generic-define-mswindows-modes)
(generic-define-unix-modes):
* lisp/help.el (describe-project, view-todo):
* lisp/hilit-chg.el (highlight-changes-colours):
* lisp/ibuffer.el (ibuffer-elide-long-columns, ibuffer-hooks)
(ibuffer-mode-hooks):
* lisp/imenu.el (imenu-always-use-completion-buffer-p):
* lisp/isearch.el (isearch-lazy-highlight-cleanup)
(isearch-lazy-highlight-initial-delay)
(isearch-lazy-highlight-interval)
(isearch-lazy-highlight-max-at-a-time)
(isearch-lazy-highlight-cleanup):
* lisp/mwheel.el (mouse-wheel-down-button)
(mouse-wheel-up-button, mouse-wheel-click-button):
* lisp/novice.el (disabled-command-hook):
* lisp/recentf.el (recentf-menu-append-commands-p):
* lisp/savehist.el (savehist-load):
* lisp/speedbar.el (speedbar-ignored-path-expressions)
(speedbar-ignored-path-regexp, speedbar-add-ignored-path-regexp)
(speedbar-line-path, speedbar-buffers-line-path, speedbar-path-line):
* lisp/subr.el (assoc-ignore-case, assoc-ignore-representation)
(x-lost-selection-hooks, x-sent-selection-hooks)
(process-kill-without-query):
* lisp/calendar/icalendar.el (icalendar-convert-diary-to-ical)
(icalendar-extract-ical-from-buffer):
* lisp/emacs-lisp/autoload.el (update-autoloads-from-directories):
* lisp/emacs-lisp/derived.el (derived-mode-class):
* lisp/emacs-lisp/generic.el (generic-font-lock-defaults):
* lisp/emacs-lisp/timer.el (timer-set-time-with-usecs):
* lisp/gnus/spam.el (spam-list-of-processors):
* lisp/international/latin1-disp.el (latin1-char-displayable-p):
* lisp/mail/rmail.el (rmail-pop-password, rmail-pop-password-required):
* lisp/net/goto-addr.el (goto-address-at-mouse):
* lisp/net/net-utils.el (ipconfig-program, ipconfig-program-options):
* lisp/obsolete/iswitchb.el (iswitchb-use-fonts):
* lisp/play/dunnet.el (dungeon-mode-map):
* lisp/progmodes/compile.el (compilation-finish-function)
* lisp/progmodes/cperl-mode.el (cperl-vc-header-alist)
* lisp/progmodes/gud.el (tooltip-gud-modes, tooltip-gud-display)
(tooltip-gud-toggle-dereference):
* lisp/progmodes/pascal.el (pascal-outline):
* lisp/progmodes/perl-mode.el (electric-perl-terminator):
* lisp/textmodes/nroff-mode.el (count-text-lines)
(forward-text-line, backward-text-line, electric-nroff-newline)
(electric-nroff-mode):
* lisp/vc/log-edit.el (vc-comment-ring, vc-comment-ring-index)
(vc-previous-comment, vc-next-comment)
(vc-comment-search-reverse, vc-comment-search-forward)
(vc-comment-to-change-log):
* lisp/vc/pcvs-info.el (cvs-display-full-path)
(cvs-fileinfo->full-path):
* lisp/vc/vc.el (vc-diff-switches-list):
Remove items, obsolete since Emacs 22.1.
* lisp/ibuffer.el (ibuffer-cached-elide-long-columns):
Remove internal variable.
(ibuffer-compile-make-eliding-form, ibuffer-check-formats):
(ibuffer-mode): Remove support for ibuffer-elide-long-columns.
* lisp/cedet/semantic/sb.el (semantic-sb-token-jump):
Remove support for speedbar-line-path.
* lisp/emacs-lisp/unsafep.el (assoc-ignore-case):
Stop marking as side-effect-free.
* lisp/gnus/spam.el (spam-group-processor-p):
Remove support for spam-list-of-processors.
* lisp/progmodes/compile.el (define-compilation-mode)
(compilation-handle-exit):
Remove support for compilation-finish-function.
* lisp/progmodes/cperl-mode.el (cperl-mode):
Remove support for cperl-vc-header-alist.
; * lisp/files.el: Comments.
; * etc/NEWS: List removed items.
2018-03-10 19:15:56 -08:00
Paul Eggert
a3f26048a9 Merge from origin/emacs-26
5c91ca8 Fix create_process bug breaking eudc-expand-inline
e244fed Clarify that nil doesn't match itself as a cl-case clause (Bu...
df0e7e2 Improve SVG documentation
a34ef52 Document the "URL" keyword in library headers
fbc7f9a * test/lisp/international/mule-tests.el: Avoid local variable...
16faff6 ; * lisp/org/org-table.el: Replace obsolete alias in comment.
2018-03-10 18:30:54 -08:00
Noam Postavsky
864643929b Let warning about (:foo) be suppressible (Bug#30499)
* lisp/emacs-lisp/bytecomp.el (byte-compile-form): Check
byte-compile-warning-enabled-p before warning about funcalling const
symbol.
2018-03-10 19:51:28 -05:00
Noam Postavsky
e244fed5e0 Clarify that nil doesn't match itself as a cl-case clause (Bug#30749)
* lisp/emacs-lisp/cl-macs.el (cl-case): Mention that the ATOM
=> (ATOM) short form is only for non-nil ATOMs.
2018-03-10 17:56:04 -05:00
Michael Heerdegen
f6bd7e0686 Revert last commit
This reverts commit af4697faa1.  It's
too late for this to be in the release.
2018-03-06 18:32:04 +01:00
Michael Heerdegen
af4697faa1 Define if-let* and derivatives as aliases for if-let etc
This commit reverts declaring `if-let' and `when-let' obsolete in
favor of the new `if-let*' and `when-let*' versions because of the
compiler warning mess (Bug#30039).  Instead we make foo-let* aliases
for foo-let.  The old single-tuple variable spec case is still
supported for backward compatibility.
* lisp/emacs-lisp/subr-x.el (if-let, when-let): Don't declare
obsolete.  Tweak edebug specs.
(and-let): Renamed from `and-let*' for compatibility with the names
`if-let' and `when-let'.
(if-let*, when-let*, and-let*): Define as aliases for `if-let',
`when-let' and `and-let'.
* test/lisp/emacs-lisp/subr-x-tests.el (if-let-single-tuple-case-test)
(when-let-single-tuple-case-test): New tests for the single-binding
tuple case.
In the whole file, prefer the names without "*".
2018-03-06 15:47:05 +01:00
Glenn Morris
7a38a6d881 * lisp/emacs-lisp/ewoc.el (ewoc-goto-node):
Simplify and quieten compiler.
2018-03-05 14:32:20 -05:00
Paul Eggert
bd6c1976fb Merge from origin/emacs-26
f2caf08ca6 ; Spelling fixes
f0e5f220b6 * lisp/progmodes/grep.el (zrgrep):
a0f71260f8 Minor copyedits in doc/emacs/text.texi
adfe2f580f Remove outdated comment in syntax.el
b80e15b6a6 Prevent Flyspell from changing unrelated words
e385599457 Avoid errors in flymake in builds --without-x
d691e30cb0 More improvements of the Emacs manual
2018-03-04 17:16:39 -08:00