Commit graph

7666 commits

Author SHA1 Message Date
Philipp Stephani
01bd4d1a82 Optimize calls to 'eql', 'memql' and similar for fixnums.
It's good practice to compare integers using 'eql' because two bignum
objects representing the same integer might not be 'eq'.  However,
'eql' is slower and doesn't have its own byte code.  Therefore,
replace it with 'eq' if one argument is guaranteed to be a fixnum on
all platforms.

* lisp/emacs-lisp/byte-opt.el (byte-optimize--fixnump): New helper
function.
(byte-optimize-equal, byte-optimize-member, byte-optimize-assoc): Use
it to optimize 'eql' etc. to 'eq' if it will always compare fixnums.
2021-05-16 14:45:18 +02:00
Lars Ingebrigtsen
43da7f838f Even further `text-property-search-forward' clarifications
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Further doc string clarifications.
2021-05-12 19:01:53 +02:00
Lars Ingebrigtsen
bc1a01172e Further corrections for the text-property-search doc strings
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Correct doc string.
(text-property-search-backward): Ditto.
2021-05-12 16:17:55 +02:00
Eli Zaretskii
98e5639c3c Fix the tests for 'string-limit'
* test/lisp/emacs-lisp/subr-x-tests.el (subr-string-limit-coding):
Fix the expected results of string-limit when encoding with
UTF-16.  Add tests for UTF-8 with BOM.  (Bug#48324)

* lisp/emacs-lisp/subr-x.el (string-limit): Add FIXME comment
about the current implementation, which is faulty by design.
2021-05-12 16:41:03 +03:00
Andrea Corallo
8bc91a6a3f * Rename comp-deferred-compilation-deny-list
* lisp/emacs-lisp/comp.el (native-comp-deferred-compilation-deny-list)
(native-compile-async-skip-p): Rename
comp-deferred-compilation-deny-list ->
native-comp-deferred-compilation-deny-list.
2021-05-11 18:31:45 +02:00
Lars Ingebrigtsen
6d225d82c8 `text-property-search-forward' doc string improvement
* lisp/emacs-lisp/text-property-search.el
(text-property-search-forward): Correct and clarify the doc string
(bug#48317).
2021-05-11 14:30:00 +02:00
Lars Ingebrigtsen
af529f777c Reintroduce autoloads for edebug-all-defs/edebug-all-forms
* lisp/emacs-lisp/edebug.el (edebug-all-defs, edebug-all-forms):
Reintroduce ;;;###autoload of these user options that were removed
in bae2cfe63c, because this leads to errors in a common (and
recommended) use case (bug#47516).
2021-05-09 11:47:01 +02:00
Basil L. Contovounesios
d3344e0a7f ; Fix recent re-builder doc changes. 2021-05-08 15:07:38 +01:00
dalanicolai
fdeb1a3dc7 Mention that Emacs is usually case-insensitive in a couple of places
* doc/lispref/searching.texi (Regular Expressions): Mention
`case-fold-search'.

* lisp/emacs-lisp/re-builder.el (re-builder): Mention case
sensitivity toggles (bug#47534).

Copyright-paperwork-exempt: yes
2021-05-08 13:59:03 +02:00
Eli Zaretskii
615cf550f2 Fix a recent change in rmc.el
* lisp/emacs-lisp/rmc.el (read-multiple-choice): Doc fix.  Improve
the message when entering recursive-edit.
2021-05-07 17:09:44 +03:00
Andrea Corallo
fbbcbed10e Rename comp-eln-load-path → native-comp-eln-load-path
* src/comp.c (Fcomp_el_to_eln_filename): Rename comp-eln-load-path →
native-comp-eln-load-path.
* src/lread.c (maybe_swap_for_eln): Likewise.
* lisp/startup.el (native-comp-eln-load-path)
(normal-top-level): Likewise.
* lisp/emacs-lisp/comp.el (comp-spill-lap-function, comp-final)
(comp-eln-load-path-eff, comp-trampoline-compile)
(comp-clean-up-stale-eln, comp-run-async-workers)
(comp-lookup-eln, batch-byte-native-compile-for-bootstrap): Likewise.
2021-05-06 17:16:09 +02:00
Andrea Corallo
901ce56603 Rename comp-warning-on-missing-source
* src/lread.c (maybe_swap_for_eln): Rename
comp-warning-on-missing-source →
native-comp-warning-on-missing-source.
* src/comp.c (syms_of_comp): Likewise.
* lisp/emacs-lisp/comp.el (native-comp-warning-on-missing-source):
Likewise.
2021-05-06 17:16:09 +02:00
Andrea Corallo
8c429a42c4 Rename comp-native-driver-options → native-comp-driver-options
* src/comp.c (add_driver_options, syms_of_comp): Rename
comp-native-driver-options → native-comp-driver-options.
* lisp/emacs-lisp/comp.el (native-comp-driver-options)
(comp-ctxt, comp-spill-lap-function, comp-final)
(comp-run-async-workers): Likewise.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Likewise.
2021-05-06 17:16:08 +02:00
Andrea Corallo
419852a599 * Rename comp-async-query-on-exit → native-comp-async-query-on-exit
* lisp/emacs-lisp/comp.el (native-comp-async-query-on-exit)
(comp-run-async-workers): Rename comp-async-query-on-exit →
native-comp-async-query-on-exit.
2021-05-06 17:16:08 +02:00
Andrea Corallo
c90129c5e5 * Rename comp-async-report-warnings-errors
* lisp/emacs-lisp/comp.el (native-comp-async-report-warnings-errors)
(comp-accept-and-process-async-output): Rename
comp-async-report-warnings-errors →
native-comp-async-report-warnings-errors.
2021-05-06 17:16:08 +02:00
Andrea Corallo
4e01605efa * Rename comp-async-env-modifier-form → native-comp-async-env-modifier-form
* lisp/emacs-lisp/comp.el (native-comp-async-env-modifier-form)
(comp-final, comp-run-async-workers): Rename
comp-async-env-modifier-form → native-comp-async-env-modifier-form.
2021-05-06 17:16:08 +02:00
Andrea Corallo
4e063bf8eb * Rename comp-async-all-done-hook → native-comp-async-all-done-hook
* lisp/emacs-lisp/comp.el (native-comp-async-all-done-hook)
(comp-run-async-workers): Rename comp-async-all-done-hook →
native-comp-async-all-done-hook.
2021-05-06 17:16:08 +02:00
Andrea Corallo
e73186a446 * Rename comp-async-cu-done-functions → native-comp-async-cu-done-functions
* lisp/emacs-lisp/comp.el (native-comp-async-cu-done-functions)
(comp-run-async-workers): Rename comp-async-cu-done-functions →
native-comp-async-cu-done-functions.
2021-05-06 17:16:08 +02:00
Andrea Corallo
d8f84a1c00 * Rename comp-async-jobs-number → native-comp-async-jobs-number
* lisp/emacs-lisp/comp.el (native-comp-async-jobs-number)
(comp-effective-async-max-jobs, native--compile-async)
(native-compile-async): Rename comp-async-jobs-number →
native-comp-async-jobs-number.
2021-05-06 17:16:08 +02:00
Andrea Corallo
31ca1c3e81 Rename comp-never-optimize-functions → native-comp-never-optimize-functions
* lisp/emacs-lisp/nadvice.el (advice--add-function): Rename
comp-never-optimize-functions → native-comp-never-optimize-functions.
* lisp/emacs-lisp/comp.el (native-comp-never-optimize-functions)
(comp-subr-trampoline-install, comp-call-optim-form-call): Likewise.
2021-05-06 17:16:07 +02:00
Andrea Corallo
85b61c0c58 Rename comp-bootstrap-deny-list → native-comp-bootstrap-deny-list
* lisp/emacs-lisp/comp.el (native-comp-bootstrap-deny-list)
(batch-native-compile): Rename comp-bootstrap-deny-list →
native-comp-bootstrap-deny-list.
2021-05-06 17:16:07 +02:00
Andrea Corallo
6595295078 * Rename comp-always-compile → native-comp-always-compile
* lisp/emacs-lisp/comp.el (native-comp-always-compile)
(comp-run-async-workers): comp-always-compile →
native-comp-always-compile.
2021-05-06 17:16:07 +02:00
Andrea Corallo
6efd7885db * Rename comp-verbose -> native-comp-verbose
* lisp/emacs-lisp/comp.el (native-comp-verbose, comp-log)
(comp-log-func, comp-final, comp-run-async-workers): Rename
comp-verbose -> native-comp-verbose.
2021-05-06 17:16:07 +02:00
Andrea Corallo
94c69eb1d7 Rename comp-debug -> native-comp-debug
* src/comp.c (emit_ctxt_code, syms_of_comp): Rename comp-debug ->
native-comp-debug.
* lisp/emacs-lisp/comp.el (native-comp-debug, comp-ctxt)
(comp-spill-lap-function, comp-run-async-workers): Likewise.
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Likewise.
* test/src/comp-tests.el (comp-tests-bootstrap): Likewise.
2021-05-06 17:16:07 +02:00
Andrea Corallo
43f29696ad Rename comp-speed -> native-comp-speed
* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename
comp-speed -> native-comp-speed.
* lisp/emacs-lisp/comp.el (native-comp-speed, comp-ctxt, comp-func,
comp-spill-lap-function, comp-trampoline-compile,
comp-run-async-workers): Likewise.
* src/comp.c (emit_ctxt_code, load_comp_unit, syms_of_comp): Likewise.
* test/src/comp-tests.el (comp-tests-tco, comp-tests-fw-prop-1)
(comp-tests-check-ret-type-spec, comp-tests-pure): Likewise.
2021-05-06 17:16:07 +02:00
Andrea Corallo
643cc3fa14 * Rename comp-limple-mode -> native-comp-limple-mode
* lisp/emacs-lisp/comp.el (comp-limple-lock-keywords): Doc update.
(native-comp-limple-mode, comp-log-to-buffer): Rename comp-limple-mode
-> native-comp-limple-mode.
2021-05-06 17:16:06 +02:00
Mattias Engdegård
12bab20920 Tidy file-matching regexps and remove some ineffective backslashes
* lisp/emacs-lisp/package.el (package--delete-directory):
* lisp/net/tramp-cmds.el (tramp-recompile-elpa):
Escape dot; replace $ with \'.
* lisp/help.el (help-for-help):
* lisp/transient.el (transient-font-lock-keywords):
Remove useless backslashes.
2021-05-06 15:53:48 +02:00
Lars Ingebrigtsen
896384b542 Make (setf (map-elt ...)) return the value in the alist/plist cases
* lisp/emacs-lisp/map.el (map-elt): Return the value in the list
case (which can signal a `map-not-inplace' error.
(map-elt): Return the value in the list case, too (bug#47572).
2021-05-06 13:32:04 +02:00
Daniel Martín
2705fc4ab0 Extend read-multiple-choice to support free-form help descriptions
* lisp/emacs-lisp/rmc.el (read-multiple-choice): Add a new argument to
override the default help description in `read-multiple-choice'.  Use
the `help-char' variable instead of ?\C-h.  Also support the `edit'
action from `query-replace-map', so that help links can be visited by
entering a recursive edit.
2021-05-06 10:21:59 +02:00
Andrea Corallo
40736357b8 Rename feature nativecomp' into native-compile'
* test/src/comp-tests.el : Rename feature `nativecomp' into
	`native-compile'.
	* test/lisp/help-fns-tests.el (help-fns-test-lisp-defun): Likewise.
	* src/comp.c (syms_of_comp): Likewise.
	* lisp/startup.el (normal-top-level): Likewise.
	* lisp/loadup.el: Likewise.
	* lisp/help.el (help-function-arglist): Likewise.
	* lisp/emacs-lisp/package.el (package--native-compile-async)
	(package--delete-directory): Likewise.
	* lisp/emacs-lisp/nadvice.el (advice--add-function): Likewise.
	* lisp/emacs-lisp/comp.el (comp-ensure-native-compiler): Likewise.
	* lisp/emacs-lisp/advice.el (ad-add-advice): Likewise.
2021-05-05 22:27:29 +02:00
Andrea Corallo
d6ddc97884 * Do not try to load unexistent eln file if async compilation was skipped
* lisp/emacs-lisp/comp.el (comp-run-async-workers): Don't try to
	load if the eln file was not produced.
2021-05-04 21:46:39 +02:00
Glenn Morris
6a030deb3d Merge from origin/emacs-27
101a049f55 Improve doc string of 'tab-width'.
43c154404e * lisp/emacs-lisp/elp.el: Doc fixes.
1984213f62 * lisp/emacs-lisp/pp.el: Doc fixes.
6486c9dc73 * admin/make-tarball.txt: Note to update more files on web...
2021-05-04 07:50:25 -07:00
Nikolay Kudryavtsev
65fe1777e6 Don't use pdumper-stats with unexec
* lisp/emacs-lisp/bytecomp.el (byte-compile-refresh-preloaded): Check if
pdumper-stats is bound before using it.
2021-05-02 13:15:50 +03:00
Mattias Engdegård
1167253f75 Don't signal scan-error in interactive sexp-based commands
This takes care of unfinished business from df0f32f048 (bug#43489).

* lisp/emacs-lisp/lisp.el (end-of-defun, mark-defun):
* lisp/reposition.el (reposition-window):
* lisp/simple.el (transpose-sexps): Convert nasty-looking scan-error
into a human-readable message.
2021-04-30 17:31:20 +02:00
Andrea Corallo
39ebc2689b * Improve `comp-normalize-valset' reproducibility (bug#48021)
* lisp/emacs-lisp/comp-cstr.el (comp-normalize-valset): Make
	it more reproducible.
2021-04-29 21:07:07 +02:00
Stefan Kangas
43c154404e * lisp/emacs-lisp/elp.el: Doc fixes. 2021-04-29 17:18:09 +02:00
Stefan Kangas
1984213f62 * lisp/emacs-lisp/pp.el: Doc fixes. 2021-04-29 13:45:18 +02:00
Stefan Kangas
086e29d213 * lisp/emacs-lisp/shortdoc.el: Doc fixes. 2021-04-29 13:32:24 +02:00
Eli Zaretskii
2feeebe40a Doc fixes in avl-tree.el
* lisp/emacs-lisp/avl-tree.el (avl-tree--root)
(avl-tree--dir-to-sign, avl-tree--sign-to-dir)
(avl-tree--del-balance, avl-tree--enter-balance)
(avl-tree--do-copy, avl-tree--stack-repopulate, avl-tree-empty)
(avl-tree-delete, avl-tree-member, avl-tree-member-p)
(avl-tree-map, avl-tree-mapc, avl-tree-mapf, avl-tree-mapcar)
(avl-tree-copy, avl-tree-clear, avl-tree-stack)
(avl-tree-stack-first): Fix doc strings to be less verbose and to
have the first line a complete sentence.
2021-04-28 19:36:42 +03:00
Stefan Kangas
4fc6afb913 * lisp/emacs-lisp/avl-tree.el: Minor doc fixes. 2021-04-28 16:02:42 +02:00
Andrea Corallo
4e1e0b9dec Have `comp-cstr-intersection-no-mem' intersect pos neg value sets
* lisp/emacs-lisp/comp-cstr.el (comp-cstr-intersection-no-mem):
	intersect pos and neg value sets
	* test/lisp/emacs-lisp/comp-cstr-tests.el
	(comp-cstr-typespec-tests-alist): Add two tests and fix some
	test number.
2021-04-27 22:58:41 +02:00
Stefan Kangas
d55d5358b2 ; * lisp/emacs-lisp/comp.el: Fix typos. Add LocalWords. 2021-04-27 14:17:44 +02:00
Glenn Morris
40a1e94f4c Doc fixes for comp.el
* lisp/emacs-lisp/comp.el (comp-deferred-compilation-deny-list)
(comp-bootstrap-deny-list, comp-pred-to-cstr, make-comp-mvar)
(comp-mvar-used-p, comp-async-compilation): Doc fixes.
2021-04-26 22:18:14 -07:00
Glenn Morris
b3b2cba5ca Fix some custom types in comp.el
* lisp/emacs-lisp/comp.el (comp-deferred-compilation-deny-list)
(comp-bootstrap-deny-list, comp-never-optimize-functions)
(comp-async-env-modifier-form, comp-native-driver-options):
Fix :type (`list' on its own isn't even a valid type).
2021-04-26 22:09:46 -07:00
Stefan Kangas
e1541b5cb4 Rename abnormal hook to comp-async-cu-done-functions
* lisp/emacs-lisp/comp.el (comp-async-cu-done-functions): Rename
from 'comp-async-cu-done-hook' to reflect that it is an abnormal
hook.  Doc fix and update single caller.
2021-04-27 03:37:43 +02:00
Stefan Monnier
7f03ee8de1 * lisp/emacs-lisp/package.el: Fix use of find-library-name
That function caused a warning for a good reason.
Don't just declare it and hope it will be available.

(package--list-of-conflicts): Require `find-func` explicitly before
declaring the function.  Also don't ignore all errors but only
the `file-error`s which will be emitted by `find-library-name`
in normal circumstances.

* lisp/emacs-lisp/find-func.el (find-library-name): Signal a `file-error`
Instead of a generic `error`.
2021-04-26 18:40:09 -04:00
Andrea Corallo
40c71e574a * lisp/emacs-lisp/comp-cstr.el (comp-ctxt): Initialize it. 2021-04-26 23:13:41 +02:00
Andrea Corallo
edf42af2cc Rework where `comp-ctxt' is defined.
* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-ctxt): Remove
	`comp-ctxt' definition.
	* lisp/emacs-lisp/comp.el (comp-ctxt): Likewise.
	* lisp/emacs-lisp/comp-cstr.el (comp-ctxt): Define it here.
2021-04-26 23:01:39 +02:00
Andrea Corallo
4396ef5a38 * lisp/emacs-lisp/comp.el: Make it loadable in vanilla builds (bug#48021). 2021-04-26 22:45:08 +02:00
Andrea Corallo
fbfb503012 * lisp/emacs-lisp/comp.el (comp-known-type-specifiers): Fix string-search. 2021-04-26 22:32:05 +02:00