]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years ago* configure.ac: Add a better libgccjit test plus some morw err message
Andrea Corallo [Mon, 4 May 2020 20:01:48 +0000 (21:01 +0100)]
* configure.ac: Add a better libgccjit test plus some morw err message

* configure.ac (libgccjit_smoke_test, libgccjit_not_found)
(libgccjit_broken): New functions.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Mon, 4 May 2020 17:24:00 +0000 (18:24 +0100)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoAdapt Tramp tests
Michael Albinus [Mon, 4 May 2020 11:09:32 +0000 (13:09 +0200)]
Adapt Tramp tests

* test/lisp/net/tramp-tests.el (tramp-test33-environment-variables):
Adapt test.

4 years agoFix setting of INSIDE_EMACS in Tramp
Michael Albinus [Mon, 4 May 2020 08:43:58 +0000 (10:43 +0200)]
Fix setting of INSIDE_EMACS in Tramp

* lisp/net/tramp-sh.el (tramp-sh-handle-make-process)
(tramp-sh-handle-process-file, tramp-open-shell): Set proper
INSIDE_EMACS environment variable.

4 years agoSimplify by using attribute.h macros
Paul Eggert [Sun, 3 May 2020 22:06:58 +0000 (15:06 -0700)]
Simplify by using attribute.h macros

attribute.h is partly designed for C2X forward compatibility,
since C2X will add some standard attributes.  Using its macros
should help insulate Emacs from C2X teething problems.
* src/conf_post.h: Include attribute.h.
(HAS_ATTRIBUTE, HAS_FEATURE): Rename from __has_attribute and
__has_feature, to avoid polluting the builtin namespace.
All uses changed.
(ATTRIBUTE_COLD, ATTRIBUTE_FORMAT, FALLTHROUGH, ATTRIBUTE_CONST)
(ATTRIBUTE_PURE, ATTRIBUTE_UNUSED, ATTRIBUTE_MAY_ALIAS)
(ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE)
(ATTRIBUTE_RETURNS_NONNULL): Remove, as attribute.h does this now.
(NO_INLINE, EXTERNALLY_VISIBLE, ARG_NONNULL, ATTRIBUTE_UNUSED):
Simplify by defining in terms of attribute.h macros.
* src/systhread.h (ATTRIBUTE_WARN_UNUSED_RESULT): Remove.
All uses replaced by attribute.h’s NODISCARD.

4 years agoUpdate from Gnulib
Paul Eggert [Sun, 3 May 2020 21:57:10 +0000 (14:57 -0700)]
Update from Gnulib

This incorporates:
2020-05-03 attribute: new module
2020-04-13 explicit_bzero: improve code style
2020-04-13 explicit_bzero: On native Windows, use SecureZeroMemory
2020-04-13 explicit_bzero: use memset_s() when available
2020-04-04 maint: remove a stray inter-word space
* build-aux/config.guess, build-aux/config.sub:
* build-aux/gitlog-to-changelog, build-aux/update-copyright:
* doc/misc/texinfo.tex, lib/explicit_bzero.c, lib/ieee754.in.h:
* lib/nstrftime.c, m4/explicit_bzero.m4, m4/gnulib-common.m4:
Copy from Gnulib.
* lib/attribute.h: New file, copied from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.

4 years ago* lisp/emacs-lisp/eieio.el (oset, oset-default): Mark as obsolete
Stefan Monnier [Sun, 3 May 2020 22:05:16 +0000 (18:05 -0400)]
* lisp/emacs-lisp/eieio.el (oset, oset-default): Mark as obsolete

4 years agoUse lexical-binding in check-declare.el and add tests
Simen Heggestøyl [Sun, 3 May 2020 17:49:55 +0000 (19:49 +0200)]
Use lexical-binding in check-declare.el and add tests

* lisp/emacs-lisp/check-declare.el: Use lexical-binding.
(check-declare-warn): Silence byte compiler warning about unused
lexical argument.

* test/lisp/emacs-lisp/check-declare-tests.el: New file with tests
for check-declare.el.

4 years ago; admin/notes/git-workflow
Glenn Morris [Sun, 3 May 2020 17:21:21 +0000 (10:21 -0700)]
; admin/notes/git-workflow

Mention reverting on release branch.

4 years ago; admin/notes/git-workflow
Glenn Morris [Sun, 3 May 2020 17:18:04 +0000 (10:18 -0700)]
; admin/notes/git-workflow

Prefer "release branch" to a specific branch that can only ever get outdated.

4 years agoFix calculator division truncation (bug#40892)
Mattias Engdegård [Thu, 30 Apr 2020 13:06:06 +0000 (15:06 +0200)]
Fix calculator division truncation (bug#40892)

* lisp/calculator.el (calculator-string-to-number): Convert decimal
numbers input to float, fixing a regression introduced in f248292ede.
Reported by Aitor Soroa.

4 years agoFix initial frame resizing issue on NS (bug#40200)
Alan Third [Sat, 18 Apr 2020 15:22:06 +0000 (16:22 +0100)]
Fix initial frame resizing issue on NS (bug#40200)

* src/nsterm.m ([EmacsView viewDidResize:]): Don't try to determine
the old size when not drawing to the buffer.

4 years agocc-mode: document Doxygen ‘c-doc-comment-style’ (bug#40877)
Michal Nazarewicz [Sun, 3 May 2020 15:12:05 +0000 (16:12 +0100)]
cc-mode: document Doxygen ‘c-doc-comment-style’  (bug#40877)

* doc/misc/cc-mode.texi (Documentation Comments): mention Doxygen markup.

4 years ago; Merge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:21 +0000 (07:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

e90b7b9ef2 (origin/emacs-27) Revert "Mark breakpoints in edebug with ...

4 years agoMerge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:21 +0000 (07:50 -0700)]
Merge from origin/emacs-27

0a3731feef Make memq etc. examples more like they were
ed25282b82 Document effect of 'search-upper-case' on replacement comm...
5a5d8a8ec0 * lisp/desktop.el (desktop-save): Doc fix.  (Bug#41007)

4 years ago; Merge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:21 +0000 (07:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

fc8e02a4d5 (emacs-27) ; Auto-commit of loaddefs files.

4 years agoMerge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:21 +0000 (07:50 -0700)]
Merge from origin/emacs-27

1d477a0fec Recommend to avoid unnecessary abbreviations in doc
aea1b4db72 Revert "Fix calculator division truncation (bug#40892)"

4 years ago; Merge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:21 +0000 (07:50 -0700)]
; Merge from origin/emacs-27

The following commit was skipped:

82140c510c Fix calculator division truncation (bug#40892)

4 years agoMerge from origin/emacs-27
Glenn Morris [Sun, 3 May 2020 14:50:20 +0000 (07:50 -0700)]
Merge from origin/emacs-27

1f17193e00 Expand file name for remote dirs as well
7a12ab5ea2 Fix project.el commands in "transient" projects
274ec97e3c Make sure alist-related functions say so in their doc

4 years agoRemove redundant :groups args missed in last commit
Stefan Kangas [Sun, 3 May 2020 14:21:51 +0000 (16:21 +0200)]
Remove redundant :groups args missed in last commit

* lisp/emacs-lisp/cl-indent.el (lisp-lambda-list-keyword-alignment)
(lisp-lambda-list-keyword-parameter-indentation)
(lisp-lambda-list-keyword-parameter-alignment)
(lisp-indent-backquote-substitution-mode): Remove redundant :group args.

4 years agoImprove indentation of 'loop' forms
Stefan Kangas [Sun, 3 May 2020 14:19:09 +0000 (16:19 +0200)]
Improve indentation of 'loop' forms

* lisp/emacs-lisp/cl-indent.el (lisp-loop-keyword-indentation)
(lisp-loop-forms-indentation, lisp-simple-loop-indentation): Use a
more standard indentation of 'loop' forms.  (Bug#2160)

(lisp-indent-maximum-backtracking, lisp-tag-indentation)
(lisp-tag-body-indentation, lisp-backquote-indentation)
(lisp-loop-keyword-indentation, lisp-loop-forms-indentation)
(lisp-simple-loop-indentation): Remove redundant :group args.

4 years agoUse lexical-binding in w32-vars.el
Stefan Kangas [Sun, 3 May 2020 14:17:08 +0000 (16:17 +0200)]
Use lexical-binding in w32-vars.el

* lisp/w32-vars.el: Use lexical-binding.
(w32-use-w32-font-dialog, w32-allow-system-shell
(w32-system-shells, w32-fixed-font-alist): Remove redundant :group
args.

4 years agoImprove accuracy of apropos commands that search doc strings
Eli Zaretskii [Sun, 3 May 2020 13:53:53 +0000 (16:53 +0300)]
Improve accuracy of apropos commands that search doc strings

It is conceptually wrong for apropos commands that search doc
strings to look for matches of several words only on the same
line, because division of doc strings between lines is
ephemeral.
* lisp/apropos.el (apropos-parse-pattern): Accept an optional
argument MULTILINE-P, and if that is non-nil, produce regexps that
match words in the list even if they are separated by line
boundaries.
(apropos-value, apropos-local-value, apropos-documentation): Use
the new optional argument in apropos commands that search
multiline text, such as doc strings.

* src/search.c (Fposix_looking_at, Fposix_string_match)
(Fposix_search_backward, Fposix_search_forward): Make sure Posix
appears in the doc strings near REGEXP, for better matches.

4 years ago* Add a warning for missing write privilege
Andrea Corallo [Sun, 3 May 2020 12:37:38 +0000 (13:37 +0100)]
* Add a warning for missing write privilege

* lisp/emacs-lisp/comp.el (native-compile-async): Check for write
privilege and raise a warning in case.

4 years ago* Introduce `comp-output-directory'
Andrea Corallo [Sun, 3 May 2020 13:35:50 +0000 (14:35 +0100)]
* Introduce `comp-output-directory'

* lisp/emacs-lisp/comp.el (comp-output-directory): New function.
(comp-output-base-filename): Use `comp-output-directory'.

4 years agoRegexps cannot infloop; fix manual
Mattias Engdegård [Sun, 3 May 2020 12:22:50 +0000 (14:22 +0200)]
Regexps cannot infloop; fix manual

* doc/lispref/searching.texi (Regexp Special): Edit erroneous
statements about infinite looping in regexps.

4 years agoDo not delete asynchronous Tramp processes due to session timeout
Michael Albinus [Sun, 3 May 2020 11:59:50 +0000 (13:59 +0200)]
Do not delete asynchronous Tramp processes due to session timeout

* lisp/net/tramp-cmds.el (tramp-cleanup-connection): New optional
argument KEEP-PROCESSES.

* lisp/net/tramp-sh.el (tramp-timeout-session): Use it.  (Bug#41042)

4 years agoImprove Tramp debug messages
Michael Albinus [Sun, 3 May 2020 11:59:08 +0000 (13:59 +0200)]
Improve Tramp debug messages

* lisp/net/tramp-cache.el (tramp-get-file-property)
(tramp-get-connection-property): Improve debug messages.
Suggested by Marc Herbert <marc.herbert@gmail.com>.

4 years agoRevert "Mark breakpoints in edebug with highlights". This fixes bug #40992
Alan Mackenzie [Sun, 3 May 2020 11:25:19 +0000 (11:25 +0000)]
Revert "Mark breakpoints in edebug with highlights".  This fixes bug #40992

Do not merge to master.

This reverts commit e8b3a15cb6ff187ce08afcb43bd9a0b7907268ca.

4 years agoUse lexical-binding for some term libraries
Stefan Kangas [Sat, 2 May 2020 20:50:14 +0000 (22:50 +0200)]
Use lexical-binding for some term libraries

This takes care of the most trivial cases, but there are more that
could be easily converted.

* lisp/term/bobcat.el:
* lisp/term/cygwin.el:
* lisp/term/konsole.el:
* lisp/term/linux.el:
* lisp/term/vt100.el:
* lisp/term/vt200.el: Use lexical-binding.

4 years agoMake memq etc. examples more like they were
Paul Eggert [Sat, 2 May 2020 20:48:21 +0000 (13:48 -0700)]
Make memq etc. examples more like they were

Problem reported by Štěpán Němec in:
https://lists.gnu.org/r/emacs-devel/2020-05/msg00130.html
* doc/lispref/lists.texi (Sets And Lists, Association Lists):
Revert examples to be more like the way they were, using
self-evaluating expressions.  Be more consistent about listing
unspecified results.

4 years agoImprove Info-mode doc and menu
Stefan Kangas [Sat, 2 May 2020 20:41:20 +0000 (22:41 +0200)]
Improve Info-mode doc and menu

* lisp/info.el (Info-mode-menu): Re-arrange to be more logical, move
items into submenus, add 'Info-directory' and separators.
(Info-mode): Add 'end-of-buffer' to doc string.  (Bug#39042)

4 years ago;; Revert recent change in tramp-cache.el
Michael Albinus [Sat, 2 May 2020 10:48:55 +0000 (12:48 +0200)]
;; Revert recent change in tramp-cache.el

* lisp/net/tramp-cache.el (tramp-dump-connection-properties):
Remove compatibility code dumping the persistency file.  Use
`emacs-lisp-mode' for backward compatibility.

4 years agoFix 'count-screen-lines' when lines are truncated
Eli Zaretskii [Sat, 2 May 2020 08:45:05 +0000 (11:45 +0300)]
Fix 'count-screen-lines' when lines are truncated

* lisp/window.el (count-screen-lines): Fix the return value when
lines are truncated in the window, and the end of the region is
invisible due to this truncation.  (Bug#40849)

4 years agoDocument effect of 'search-upper-case' on replacement commands
Eli Zaretskii [Sat, 2 May 2020 07:54:01 +0000 (10:54 +0300)]
Document effect of 'search-upper-case' on replacement commands

* doc/emacs/search.texi (Replacement and Lax Matches): Document
the role of 'search-upper-case' in replacement commands.
(Lax Search): Document the value 'not-yanks' of
'search-upper-case' where the variable itself is documented.

* lisp/replace.el (query-replace-regexp, query-replace): Mention
'search-upper-case' and its effect in doc strings.  (Bug#40940)

4 years agoProperly fix embarassing missing paren typo in jsonrpc.el
João Távora [Fri, 1 May 2020 23:10:51 +0000 (00:10 +0100)]
Properly fix embarassing missing paren typo in jsonrpc.el

Paul Eggert had fixed it in practice, but the missing paren
was meant to close a previous with-current-buffer.

* lisp/jsonrpc.el (initialize-instance): Put parenthesis in right spot.
(Version): Bump to 1.0.11

4 years ago* lisp/desktop.el (desktop-save): Doc fix. (Bug#41007)
Eli Zaretskii [Fri, 1 May 2020 19:59:27 +0000 (22:59 +0300)]
* lisp/desktop.el (desktop-save): Doc fix.  (Bug#41007)

4 years agoInhibit modification hooks when saving eieio-persistent's
Michael Heerdegen [Fri, 1 May 2020 00:08:17 +0000 (02:08 +0200)]
Inhibit modification hooks when saving eieio-persistent's

* lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Bind
inhibit-modification-hooks -> t.

4 years agocc-mode: add support for Doxygen documentation style
Michal Nazarewicz [Sun, 26 Apr 2020 18:30:41 +0000 (19:30 +0100)]
cc-mode: add support for Doxygen documentation style

* lisp/progmodes/cc-fonts.el (doxygen-font-lock-doc-comments,
  doxygen-font-lock-keywords): New constants defining Doxygen
  comment style support.
* lisp/progmodes/cc-vars.el (c-doc-comment-style): Updated docstring
  to mention now-supported Doxygen mode.

4 years ago* lisp/jsonrpc.el (initialize-instance): Fix closing-paren typo.
Paul Eggert [Fri, 1 May 2020 17:50:03 +0000 (10:50 -0700)]
* lisp/jsonrpc.el (initialize-instance): Fix closing-paren typo.

4 years agoConsolidate lisp/jsonrpc.el logging in single events buffer
João Távora [Fri, 1 May 2020 12:24:56 +0000 (13:24 +0100)]
Consolidate lisp/jsonrpc.el logging in single events buffer

For inferior processes having useful stderr, it is no longer
cumbersome to switch between different buffers to correlate error
messages with transport-level JSONRPC messages.

The existing stderr and stdout buffers can still be found hidden away
from the normal buffer list.

An original idea of Tobias Rittweiler <trittweiler@gmail.com>.

* lisp/jsonrpc.el (initialize-instance jsonrpc-process-connection):
Setup after-change functions stderr buffer.  Hide stderr and stdout
buffers.
(jsonrpc--log-event): Don't output extra newline.  Tweak log format.
(Version): Bump to 1.0.10

4 years ago; Fix recent additions with lisp-data-mode
Basil L. Contovounesios [Fri, 1 May 2020 13:44:56 +0000 (14:44 +0100)]
; Fix recent additions with lisp-data-mode

* lisp/bookmark.el (bookmark-insert-file-format-version-stamp)
(save-place-alist-to-file): Delimit file-local variables on the -*-
line with semicolons.
* lisp/files.el (auto-mode-alist): Use shy regexp group.

4 years ago; Auto-commit of loaddefs files.
Glenn Morris [Fri, 1 May 2020 13:27:00 +0000 (06:27 -0700)]
; Auto-commit of loaddefs files.

4 years ago; Auto-commit of loaddefs files.
Glenn Morris [Fri, 1 May 2020 13:12:54 +0000 (06:12 -0700)]
; Auto-commit of loaddefs files.

4 years agoProtect non-selected face spec components in custimize-face. Fixes bug #40866
Alan Mackenzie [Fri, 1 May 2020 12:23:15 +0000 (12:23 +0000)]
Protect non-selected face spec components in custimize-face.  Fixes bug #40866

* lisp/cus-edit.el (custom-face-save): If the current face widget is only
displaying part of the face spec, temporarily set it to "display" the whole
spec around the call to custom-face-mark-to-save.

4 years agoAdd lisp-data-mode for editing non-code Lisp data
João Távora [Sat, 18 Apr 2020 01:46:04 +0000 (02:46 +0100)]
Add lisp-data-mode for editing non-code Lisp data

Fixes: bug#40573
The new mode can be used stand-alone or inherited from by modes
intended to edit programs. The existing emacs-lisp-mode and lisp-mode
are examples.

Thanks to Juri Linkov and Basil L. Contovounesios for researching some
data files in Emacs that can be automatically set to use the new mode.

* lisp/files.el (auto-mode-alist): Add entry for ".dir-locals" and
".dir-locals-2"

* lisp/emacs-lisp/lisp-mode.el: (lisp-data-mode): New major mode.
(lisp-mode): Inherit from lisp-data-mode.  Set special lisp-mode
stuff here.

* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Inherit from
lisp-data-mode.

* lisp/bookmark.el (bookmark-insert-file-format-version-stamp):
Use lisp-data-mode.

* lisp/saveplace.el (save-place-alist-to-file): Use
lisp-data-mode.

* lisp/net/eww.el (eww-write-bookmarks): Use lisp-data-mode.

* lisp/net/nsm.el (nsm-write-settings): Use lisp-data-mode.

* lisp/net/tramp-cache.el (tramp-dump-connection-properties): Use
lisp-data-mode.

* etc/NEWS: Mention lisp-data-mode.

* doc/lispref/modes.texi (Example Major Modes): Update example.

4 years agoUse lexical-binding in most remaining tests
Stefan Kangas [Fri, 1 May 2020 11:02:38 +0000 (13:02 +0200)]
Use lexical-binding in most remaining tests

* test/lisp/comint-tests.el:
* test/lisp/custom-resources/custom--test-theme.el:
* test/lisp/dabbrev-tests.el:
* test/lisp/emulation/viper-tests.el:
* test/lisp/erc/erc-track-tests.el:
* test/lisp/gnus/gnus-tests.el:
* test/lisp/imenu-tests.el:
* test/lisp/info-xref-tests.el:
* test/lisp/jit-lock-tests.el:
* test/lisp/json-tests.el:
* test/lisp/man-tests.el:
* test/lisp/replace-tests.el:
* test/lisp/shadowfile-tests.el:
* test/lisp/subr-tests.el:
* test/lisp/thingatpt-tests.el:
* test/lisp/xml-tests.el: Use lexical-binding.

* test/lisp/man-tests.el (man-tests-filter-strings):
* test/lisp/shadowfile-tests.el (shadow-test00-clusters)
(shadow-test01-sites, shadow-test06-literal-groups)
(shadow-test07-regexp-groups, shadow-test09-shadow-copy-files):
Silence byte-compiler.

4 years agoMake `make-local-variable' declare the var locally dynamic
Michael Heerdegen [Thu, 9 Apr 2020 23:21:33 +0000 (01:21 +0200)]
Make `make-local-variable' declare the var locally dynamic

The only effect of this change is to get rid of some unnecessary
"assignment to free variable" warnings.

* lisp/emacs-lisp/bytecomp.el (byte-compile-make-local-variable): New
function.

4 years agoFix calculator division truncation (bug#40892)
Mattias Engdegård [Thu, 30 Apr 2020 13:06:06 +0000 (15:06 +0200)]
Fix calculator division truncation (bug#40892)

* lisp/calculator.el (calculator-string-to-number): Convert decimal
numbers input to float, fixing a regression introduced in f248292ede.
Reported by Aitor Soroa.

4 years agoRecommend to avoid unnecessary abbreviations in doc
Stefan Kangas [Thu, 30 Apr 2020 16:02:28 +0000 (18:02 +0200)]
Recommend to avoid unnecessary abbreviations in doc

* doc/lispref/tips.texi (Documentation Tips): Recommend to avoid
unnecessary abbreviations.  (Bug#40011)

4 years agoRevert "Fix calculator division truncation (bug#40892)"
Eli Zaretskii [Thu, 30 Apr 2020 14:02:57 +0000 (17:02 +0300)]
Revert "Fix calculator division truncation (bug#40892)"

This reverts commit 82140c510c4d27e639b4bca1e9bf158f0f66c375.
(Bug#40892)

4 years agoFix calculator division truncation (bug#40892)
Mattias Engdegård [Thu, 30 Apr 2020 13:06:06 +0000 (15:06 +0200)]
Fix calculator division truncation (bug#40892)

* lisp/calculator.el (calculator-string-to-number): Convert decimal
numbers input to float, fixing a regression introduced in f248292ede.
Reported by Aitor Soroa.

4 years agoUse lexical-binding in most remaining emacs-lisp tests
Stefan Kangas [Thu, 30 Apr 2020 10:06:48 +0000 (12:06 +0200)]
Use lexical-binding in most remaining emacs-lisp tests

* test/lisp/emacs-lisp/edebug-resources/edebug-test-code.el:
* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el:
* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el:
* test/lisp/emacs-lisp/faceup-resources/faceup-test-mode.el:
* test/lisp/emacs-lisp/faceup-resources/faceup-test-this-file-directory.el:
* test/lisp/emacs-lisp/faceup-tests/faceup-test-basics.el:
* test/lisp/emacs-lisp/faceup-tests/faceup-test-files.el:
* test/lisp/emacs-lisp/package-resources/newer-versions/new-pkg-1.0.el:
* test/lisp/emacs-lisp/package-resources/newer-versions/simple-single-1.4.el:
* test/lisp/emacs-lisp/package-resources/simple-depend-1.0.el:
* test/lisp/emacs-lisp/package-resources/simple-single-1.3.el:
* test/lisp/emacs-lisp/package-resources/simple-two-depend-1.1.el:
* test/lisp/emacs-lisp/package-tests.el:
* test/lisp/emacs-lisp/shadow-resources/p1/foo.el:
* test/lisp/emacs-lisp/shadow-resources/p2/FOO.el: Use lexical-binding.

* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
(eitest-F, eitest-H, eitest-I, constructor, make-instance)
(initialize-instance, CNM-M):
* test/lisp/emacs-lisp/package-tests.el (with-package-test)
(package-test-update-archives, package-test-signed): Silence byte-compiler.

4 years ago; Silence byte-compiler warning in version.el
Basil L. Contovounesios [Thu, 30 Apr 2020 10:01:13 +0000 (11:01 +0100)]
; Silence byte-compiler warning in version.el

* lisp/version.el (emacs-repository-get-version): Prefix unused
argument with underscore.

4 years ago; Fix last addition to dom-tests.el
Basil L. Contovounesios [Thu, 30 Apr 2020 09:46:54 +0000 (10:46 +0100)]
; Fix last addition to dom-tests.el

* test/lisp/dom-tests.el (dom-tests-remove-attribute): Make test
idempotent by avoiding destructive modification of constant literal.

4 years agoUse lexical-binding in qp.el and add tests
Stefan Kangas [Thu, 30 Apr 2020 08:36:54 +0000 (10:36 +0200)]
Use lexical-binding in qp.el and add tests

* test/lisp/mail/qp-tests.el: New file.
* lisp/mail/qp.el: Use lexical-binding.

4 years agoAdd new function dom-remove-attribute
Lars Ingebrigtsen [Thu, 30 Apr 2020 04:05:17 +0000 (06:05 +0200)]
Add new function dom-remove-attribute

* doc/lispref/text.texi (Document Object Model): Document it.

* lisp/dom.el (dom-remove-attribute): Add new function.

4 years ago* Fix async compilation non respecting `comp-always-compile' nil value.
Andrea Corallo [Wed, 29 Apr 2020 20:21:42 +0000 (21:21 +0100)]
* Fix async compilation non respecting `comp-always-compile' nil value.

* lisp/emacs-lisp/comp.el (comp-run-async-workers): Fix missing
`comp-output-filename' usage.

4 years agoExpand file name for remote dirs as well
Dmitry Gutov [Wed, 29 Apr 2020 19:46:17 +0000 (22:46 +0300)]
Expand file name for remote dirs as well

* lisp/progmodes/project.el (project--files-in-directory):
Expand file name for remote dirs as well (bug#40940).

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Wed, 29 Apr 2020 19:25:23 +0000 (20:25 +0100)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoFix project.el commands in "transient" projects
Eli Zaretskii [Wed, 29 Apr 2020 15:58:42 +0000 (18:58 +0300)]
Fix project.el commands in "transient" projects

* lisp/progmodes/project.el (project--files-in-directory): Run
local DIR directory names through 'expand-file-name', so that "~/"
is expanded, in case the shell doesn't or the shell's notion of
the home directory is different from that of Emacs.  (Bug#40940)

4 years agoTest iso8601-parse-zone vs format-time-string %z
Stephen Gildea [Wed, 29 Apr 2020 14:36:07 +0000 (07:36 -0700)]
Test iso8601-parse-zone vs format-time-string %z

* test/lisp/calendar/iso8601-tests.el
(iso8601-format-time-string-zone-round-trip): New unit test that
format-time-string %z and iso8601-parse-zone are inverses.
(test-iso8601-format-time-string-zone-round-trip): New helper function.

4 years agoMake sure alist-related functions say so in their doc
Eli Zaretskii [Wed, 29 Apr 2020 14:52:53 +0000 (17:52 +0300)]
Make sure alist-related functions say so in their doc

* src/fns.c (Fassq, assq_no_quit, Fassoc, assoc_no_quit, Frassq)
(Frassoc): Rename argument LIST to ALIST.  Doc strings updated.

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 29 Apr 2020 14:50:20 +0000 (07:50 -0700)]
Merge from origin/emacs-27

2f9bfaef21 (origin/emacs-27) ; Fix last change
520fd3e728 * lisp/env.el (substitute-env-vars): Doc fix.  (Bug#40948)
85544f8ef5 * lisp/isearch.el: Fix lazy-highlighting and lazy-counting...
d83cc05a73 Fix error in ERC when 'erc-server-coding-system' is custom...
16fed05ba8 Avoid crashes on TTY frames with over-long compositions
0278741676 Fix typo in custom.texi
9f5ae717fb * test/lisp/simple-tests.el (with-shell-command-dont-erase...
1f76a16ed3 * lisp/image-mode.el (image-mode-map): Update menu items.
f0e1bf56f0 Fix bugs in tab-bar and tab-line and mention remaining fea...
f0b9f18457 Make shell-command tests fit for tcsh.
68f4a740a1 Remove doc duplication
ac31cd384c * etc/NEWS: Fix inconsistencies.

# Conflicts:
# etc/NEWS

4 years ago; Fix last change
Eli Zaretskii [Wed, 29 Apr 2020 11:15:03 +0000 (14:15 +0300)]
; Fix last change

4 years ago* lisp/env.el (substitute-env-vars): Doc fix. (Bug#40948)
Eli Zaretskii [Wed, 29 Apr 2020 11:06:35 +0000 (14:06 +0300)]
* lisp/env.el (substitute-env-vars): Doc fix.  (Bug#40948)

4 years agoUse lexical-binding in most eshell tests
Stefan Kangas [Wed, 29 Apr 2020 08:28:07 +0000 (10:28 +0200)]
Use lexical-binding in most eshell tests

* test/lisp/eshell/em-hist-tests.el:
* test/lisp/eshell/em-ls-tests.el:
* test/lisp/eshell/esh-opt-tests.el: Use lexical-binding.

4 years agoAdd new tests to bindat-tests.el
Stefan Kangas [Wed, 29 Apr 2020 07:52:34 +0000 (09:52 +0200)]
Add new tests to bindat-tests.el

* test/lisp/emacs-lisp/bindat-tests.el (bindat-test-format-vector)
(bindat-test-vector-to-dec, bindat-test-vector-to-hex)
(bindat-test-ip-to-string): New tests.
* lisp/emacs-lisp/bindat.el (bindat-vector-to-hex): Fix typo.

4 years agoUse lexical-binding in float-sup.el and add tests
Stefan Kangas [Tue, 28 Apr 2020 22:11:56 +0000 (00:11 +0200)]
Use lexical-binding in float-sup.el and add tests

* lisp/emacs-lisp/float-sup.el: Use lexical-binding.
* test/lisp/emacs-lisp/float-sup-tests.el: New file.

4 years ago* lisp/isearch.el: Fix lazy-highlighting and lazy-counting of hidden matches
Juri Linkov [Tue, 28 Apr 2020 23:49:44 +0000 (02:49 +0300)]
* lisp/isearch.el: Fix lazy-highlighting and lazy-counting of hidden matches

* lisp/isearch.el (isearch-lazy-highlight-search): Let-bind
search-invisible to t when search-invisible is 'open' or when both
isearch-lazy-count and search-invisible are non-nil.  (Bug#40808)

4 years agoUse lexical-binding in rfc2368.el and add tests
Stefan Kangas [Tue, 28 Apr 2020 21:54:28 +0000 (23:54 +0200)]
Use lexical-binding in rfc2368.el and add tests

* lisp/mail/rfc2368.el: Use lexical-binding.
* test/lisp/mail/rfc2368-tests.el: New file.

4 years agoUse lexical-binding in version.el and add tests
Stefan Kangas [Tue, 28 Apr 2020 21:35:00 +0000 (23:35 +0200)]
Use lexical-binding in version.el and add tests

* lisp/version.el: Use lexical-binding.
* test/lisp/version-tests.el: New file.

4 years agoFix error in ERC when 'erc-server-coding-system' is customized
Eli Zaretskii [Tue, 28 Apr 2020 17:22:50 +0000 (20:22 +0300)]
Fix error in ERC when 'erc-server-coding-system' is customized

* lisp/erc/erc-backend.el (erc-split-line): Handle the case where
'erc-coding-system-for-target' returns a coding-system's symbol.
(Bug#40914)

4 years agoUse lexical-binding in puny.el and add more tests
Stefan Kangas [Tue, 28 Apr 2020 16:13:58 +0000 (18:13 +0200)]
Use lexical-binding in puny.el and add more tests

* lisp/net/puny.el: Use lexical-binding.
* test/lisp/net/puny-tests.el (puny-test-encode-domain)
(puny-test-decode-domain, puny-highly-restrictive-domain-p): New
tests.

4 years agoUse lexical-binding in hmac-md5.el and add tests
Stefan Kangas [Tue, 28 Apr 2020 15:35:12 +0000 (17:35 +0200)]
Use lexical-binding in hmac-md5.el and add tests

* lisp/net/hmac-md5.el: Use lexical-binding.
* test/lisp/net/hmac-md5-tests.el: New file.

4 years agoUse lexical-binding in many emacs-lisp tests
Stefan Kangas [Tue, 28 Apr 2020 14:33:08 +0000 (16:33 +0200)]
Use lexical-binding in many emacs-lisp tests

* test/lisp/emacs-lisp/bytecomp-tests.el:
* test/lisp/emacs-lisp/ert-x-tests.el:
* test/lisp/emacs-lisp/nadvice-tests.el:
* test/lisp/emacs-lisp/pcase-tests.el:
* test/lisp/emacs-lisp/seq-tests.el:
* test/lisp/emacs-lisp/subr-x-tests.el:
* test/lisp/emacs-lisp/text-property-search-tests.el: Use
lexical-binding.

* test/lisp/emacs-lisp/seq-tests.el (test-seq-filter)
(test-seq-remove, test-seq-count, test-seq-every-p): Silence
byte-compiler.

4 years agoUse lexical-binding in most semantic tests
Stefan Kangas [Tue, 28 Apr 2020 14:11:47 +0000 (16:11 +0200)]
Use lexical-binding in most semantic tests

* test/lisp/cedet/semantic-utest-fmt.el:
* test/lisp/cedet/semantic-utest-ia.el:
* test/lisp/cedet/semantic-utest.el:
* test/lisp/cedet/srecode-utest-getset.el:
* test/lisp/cedet/srecode-utest-template.el: Use lexical-binding.

* test/lisp/cedet/semantic-utest-fmt.el (semantic-fmt-utest):
* test/lisp/cedet/semantic-utest.el (semantic-utest-generic)
(semantic-utest-Python, semantic-utest-Javascript)
(semantic-utest-Java, semantic-utest-Makefile)
(semantic-utest-Scheme, semantic-utest-Html, semantic-utest-PHP)
(semantic-utest-Csharp, semantic-utest-last-invalid):
* test/lisp/cedet/semantic-utest-ia.el (semantic-ia-utest-buffer)
(semantic-symref-test-count-hits-in-tag):
* test/lisp/cedet/srecode-utest-getset.el
(srecode-insert-getset-fully-automatic-flag): Silence
byte-compiler.

4 years agoDon't skip test semantic-utest-Python
Stefan Kangas [Tue, 28 Apr 2020 12:12:25 +0000 (14:12 +0200)]
Don't skip test semantic-utest-Python

* test/lisp/cedet/semantic-utest.el (semantic-utest-Python):
Ensure test is not skipped.

4 years agoUse lexical-binding in most progmodes tests
Stefan Kangas [Tue, 28 Apr 2020 11:54:00 +0000 (13:54 +0200)]
Use lexical-binding in most progmodes tests

* test/lisp/progmodes/etags-tests.el:
* test/lisp/progmodes/f90-tests.el:
* test/lisp/progmodes/ps-mode-tests.el:
* test/lisp/progmodes/python-tests.el:
* test/lisp/progmodes/ruby-mode-tests.el:
* test/lisp/progmodes/subword-tests.el:
* test/lisp/progmodes/tcl-tests.el:
* test/lisp/progmodes/xref-tests.el: Use lexical-binding.

* test/lisp/progmodes/python-tests.el (python-tests-visible-string)
(python-tests-look-at-1, python-tests-look-at-2)
(python-shell-calculate-process-environment-2): Silence byte-compiler.

4 years agoAvoid crashes on TTY frames with over-long compositions
Eli Zaretskii [Tue, 28 Apr 2020 08:57:16 +0000 (11:57 +0300)]
Avoid crashes on TTY frames with over-long compositions

* src/term.c (encode_terminal_code): Each character from an
automatic composition is a multibyte character, so its multibyte
representation can take up to MAX_MULTIBYTE_LENGTH bytes.
Account for that when allocating storage for characters to be
encoded.  (Bug#40913)

4 years agoUse lexical-binding in most vc tests
Stefan Kangas [Tue, 28 Apr 2020 08:36:34 +0000 (10:36 +0200)]
Use lexical-binding in most vc tests

* test/lisp/vc/add-log-tests.el:
* test/lisp/vc/diff-mode-tests.el:
* test/lisp/vc/ediff-ptch-tests.el:
* test/lisp/vc/smerge-mode-tests.el:
* test/lisp/vc/vc-hg-tests.el:
* test/lisp/vc/vc-tests.el: Use lexical-binding.

* test/lisp/vc/add-log-tests.el
(add-log-current-defun-deftest): Silence byte-compiler.

4 years agoImprove multibyte_length performance
Paul Eggert [Mon, 27 Apr 2020 22:46:37 +0000 (15:46 -0700)]
Improve multibyte_length performance

* src/character.h (multibyte_length):
Merge tests so that there are fewer conditional branches.
This improved CPU speed of ‘make compile-always’
by about 1.5% on my platform.

4 years ago* lisp/jit-lock.el: Don't use `make-variable-buffer-local` on hooks.
Stefan Monnier [Mon, 27 Apr 2020 22:36:28 +0000 (18:36 -0400)]
* lisp/jit-lock.el: Don't use `make-variable-buffer-local` on hooks.

(jit-lock-functions): Clarify that it's a hook.
(jit-lock-unregister): Adjust accordingly.

4 years agoUse lexical-binding in calendar tests
Stefan Kangas [Mon, 27 Apr 2020 16:27:24 +0000 (18:27 +0200)]
Use lexical-binding in calendar tests

* test/lisp/calendar/icalendar-tests.el:
* test/lisp/calendar/parse-time-tests.el: Use lexical-binding.

* test/lisp/calendar/icalendar-tests.el (icalendar--format-ical-event)
(icalendar--decode-isodatetime, icalendar-tests--do-test-import)
(icalendar-tests--decode-isodatetime): Silence byte-compiler.

4 years agoFix typo in custom.texi
Stefan Kangas [Mon, 27 Apr 2020 15:09:11 +0000 (17:09 +0200)]
Fix typo in custom.texi

* doc/emacs/custom.texi (Variables): Fix typo.  Pointed out by
ej32u@protonmail.com.  (Bug#40890)

4 years ago* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
Michael Albinus [Mon, 27 Apr 2020 08:36:33 +0000 (10:36 +0200)]
* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):

Use `shell-quote-argument' instead of quoting 'like this'.

4 years agoSimplify string-to-char
Paul Eggert [Mon, 27 Apr 2020 02:30:37 +0000 (19:30 -0700)]
Simplify string-to-char

* src/editfns.c (Fstring_to_char): Simplify.

* src/editfns.c (Fstring_to_char): Simplify.

This tweak improved the CPU time performance of
‘make compile-always’ by about 1.8% on my platform.

4 years agoImprove string_char_and_length speed
Paul Eggert [Sun, 26 Apr 2020 22:18:49 +0000 (15:18 -0700)]
Improve string_char_and_length speed

This tweak improved the CPU time performance of
‘make compile-always’ by about 1.7% on my platform.
* src/character.c (string_char): Remove; no longer used.
* src/character.h (string_char_and_length): Redo so that it
needn’t call string_char.  This helps the caller, which can now
become a leaf function.

4 years ago* test/lisp/mail/rfc2045-tests.el: Make it work.
Glenn Morris [Sun, 26 Apr 2020 23:47:04 +0000 (16:47 -0700)]
* test/lisp/mail/rfc2045-tests.el: Make it work.

4 years ago* lisp/image-mode.el (image-mode-map): Update menu items.
Juri Linkov [Sun, 26 Apr 2020 22:33:36 +0000 (01:33 +0300)]
* lisp/image-mode.el (image-mode-map): Update menu items.

* lisp/image-mode.el (image-mode-map): Move "Fit Image to Window (Best Fit)"
higher.  Add "Zoom In" (image-increase-size), "Zoom Out" (image-decrease-size)
and "Rotate Clockwise" (image-rotate).  Use name "Set Rotation..."
for image-transform-set-rotation.  Swap "Next Image" and "Previous Image".
Swap "Next Frame" and "Previous Frame".

4 years agoFix bugs in tab-bar and tab-line and mention remaining features in manual.
Juri Linkov [Sun, 26 Apr 2020 22:28:36 +0000 (01:28 +0300)]
Fix bugs in tab-bar and tab-line and mention remaining features in manual.

* doc/emacs/frames.texi (Tab Bars): Mention tab-bar-new-tab-to,
tab-bar-close-last-tab-choice, tab-bar-close-tab-select, tab-undo,
tab-select, tab-bar-history-mode.

* doc/emacs/windows.texi (Tab Line): Mention tab-line-tabs-function.

* lisp/tab-bar.el (tab-bar-select-tab-modifiers): Mention
tab-bar-tab-hints in docstring.
(tab-bar-tab-hints): Mention tab-bar-select-tab-modifiers
in docstring.
(tab-bar-select-tab): Mention tab-bar-select-tab-modifiers
in docstring.
(tab-bar-switch-to-tab): Expand the docstring.
(tab-bar-new-tab-to): Fix bug in handling 'left' value.
(tab-bar-close-tab): Fix bug in handling 'left' value.
(tab-bar-undo-close-tab): Use funcall tab-bar-tabs-function
instead of direct call to tab-bar-tabs.
(tab-bar-history-back, tab-bar-history-forward): Add docstrings.
(tab-bar-history-mode): Expand docstring.

* lisp/tab-line.el (tab-line-format): Fix bug for handling window
switching that should set face 'tab-line-tab-current'.

4 years agoRework spill LAP mechanism in preparation of compiling lambdas.
Andrea Corallo [Sun, 26 Apr 2020 18:55:26 +0000 (19:55 +0100)]
Rework spill LAP mechanism in preparation of compiling lambdas.

* lisp/emacs-lisp/comp.el (comp-spill-lap-function): No need anymore
to have `byte-native-compiling' bound to free-func.
(comp-spill-lap-function): Make use of `byte-to-native-lap-h' and
clean-up.
(comp-spill-lap-function): Likewise.

* lisp/emacs-lisp/bytecomp.el (byte-to-native-function): Add lap slot.
(byte-to-native-lap): Rename into byte-to-native-lap-h.
(byte-compile-lapcode): Spill lap after having int assembled and
store it into `byte-to-native-lap-h'.
(byte-compile-not-top-level): Remove.
(byte-compile-file-form-defmumble): Fill directly lap slot.
(byte-compile-lambda): Remove `byte-compile-not-top-level'.
(byte-compile-out-toplevel): Restore original code.
(byte-compile-form): Remove `byte-compile-not-top-level'.
(byte-compile-function-form): Likewise.
(byte-compile-flush-pending): No need anymore to set
`byte-compile-current-form' so restore orignal code.

4 years agoUse lexical-binding for themes
Stefan Kangas [Sun, 26 Apr 2020 14:22:34 +0000 (16:22 +0200)]
Use lexical-binding for themes

* etc/themes/adwaita-theme.el:
* etc/themes/deeper-blue-theme.el:
* etc/themes/dichromacy-theme.el:
* etc/themes/light-blue-theme.el:
* etc/themes/manoj-dark-theme.el:
* etc/themes/misterioso-theme.el:
* etc/themes/tango-dark-theme.el:
* etc/themes/tango-theme.el:
* etc/themes/tsdh-dark-theme.el:
* etc/themes/tsdh-light-theme.el:
* etc/themes/wheatgrass-theme.el:
* etc/themes/whiteboard-theme.el:
* etc/themes/wombat-theme.el: Use lexical-binding.

4 years agoUse lexical-binding in dos-vars.el
Stefan Kangas [Sun, 26 Apr 2020 12:17:58 +0000 (14:17 +0200)]
Use lexical-binding in dos-vars.el

* lisp/dos-vars.el: Use lexical-binding.
(msdos-shells, dos-codepage-setup-hook): Remove redundant :group
args.

4 years agoFix tramp-test32-shell-command-dont-erase-buffer
Michael Albinus [Sun, 26 Apr 2020 11:32:01 +0000 (13:32 +0200)]
Fix tramp-test32-shell-command-dont-erase-buffer

* test/lisp/net/tramp-tests.el
(tramp-test32-shell-command-dont-erase-buffer): Adapt test.

4 years agoMake shell-command tests fit for tcsh.
Michael Albinus [Sun, 26 Apr 2020 09:39:40 +0000 (11:39 +0200)]
Make shell-command tests fit for tcsh.

* test/lisp/simple-tests.el (with-shell-command-dont-erase-buffer):
Fix debug spec.  Format command to run also under tcsh.
(simple-tests-shell-command-39067)
(simple-tests-shell-command-dont-erase-buffer): Quote newline in string.

4 years agoMerge remote-tracking branch 'savannah/master' into HEAD
Andrea Corallo [Sun, 26 Apr 2020 09:24:26 +0000 (10:24 +0100)]
Merge remote-tracking branch 'savannah/master' into HEAD

4 years agoConvert before final function doc hash into a vector.
Andrea Corallo [Sun, 26 Apr 2020 08:11:33 +0000 (09:11 +0100)]
Convert before final function doc hash into a vector.

* lisp/emacs-lisp/comp.el (comp-finalize-relocs): Convert doc hash
table into vector befor final.
(comp-emit-for-top-level): Rename `comp-ctxt-doc-index-h' ->
`comp-ctxt-function-docs'.
(comp-ctxt): Likewise.

* src/comp.c (native_function_doc): Update logic for documentation
being a vector.
(emit_ctxt_code): Update for 'comp-ctxt-doc-index-h' slot rename.

* src/comp.h (struct Lisp_Native_Comp_Unit): Rename 'data_fdoc_h'
into data_fdoc_v.

* src/pdumper.c (dump_native_comp_unit): Likewise.

4 years agoUse lexical-binding in spook.el
Stefan Kangas [Sun, 26 Apr 2020 07:19:46 +0000 (09:19 +0200)]
Use lexical-binding in spook.el

* lisp/play/spook.el: Use lexical-binding.
(spook-phrases-file, spook-phrase-default-count): Remove redundant
:group args.

4 years agoUse lexical-binding for rfc2045.el and add tests
Stefan Kangas [Sat, 25 Apr 2020 23:27:23 +0000 (01:27 +0200)]
Use lexical-binding for rfc2045.el and add tests

* lisp/mail/rfc2045.el: Use-lexical-binding.
* test/lisp/mail/rfc2045-tests.el: New file.