Commit graph

7578 commits

Author SHA1 Message Date
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
Andrea Corallo
58fc16063c * lisp/emacs-lisp/comp.el (comp-accept-and-process-async-output): Fix regexp. 2021-04-26 16:00:03 +02:00
Glenn Morris
b7c22fab7d ; Add 2021 to copyright years 2021-04-25 17:24:48 -07:00
Stefan Kangas
ec2ccae3e6 * lisp/emacs-lisp/comp.el (no-native-compile): Minor doc fixes. 2021-04-25 20:47:44 +02:00
Andrea Corallo
289000eee7 Merge branch 'feature/native-comp' into into trunk 2021-04-25 20:06:22 +02:00
Glenn Morris
6dabbddb5f Merge from origin/emacs-27
7d5b973959 (origin/emacs-27) * doc/misc/cl.texi (For Clauses): Minor ...
4570781f8d ; * doc/lispref/files.texi (Directory Names): Add missing ...
1b52fd538d Minor update for make-tarball.txt
8efb8491b2 * doc/misc/cl.texi (Iteration Clauses): fix `never' clause...
0873134682 ; Fix Texinfo in last change to minibuf.texi.
cad8913c89 Improve filling-related documentation
2b7eed23eb ; * doc/lispref/keymaps.texi (Easy Menu): Fix typo.
47fc92cefc Fix reference to "yanking" in the main Emacs manual
1789dcdb35 Improve documentation of 'map-y-or-n-p'
2021-04-25 09:16:09 -07:00
Stefan Kangas
34367cc8af Don't hard-code face of "Install" button
* lisp/emacs-lisp/package.el (package-make-button): Use the
'custom-button' face for the "Install" button.  (Bug#47944)
2021-04-25 13:00:29 +02:00
Štěpán Němec
2c2dfbbbf0 ; Fix some typos in doc strings and manuals 2021-04-24 18:26:07 +02:00
Stefan Kangas
3a526b6f7e * lisp/emacs-lisp/package.el (package-archives): Bump :version. 2021-04-21 23:27:13 +02:00
Stefan Kangas
85ef248ec4 * lisp/emacs-lisp/package.el: Doc fix. 2021-04-21 23:26:00 +02:00
Andrea Corallo
606188a360 * lisp/emacs-lisp/comp.el (comp-imm-equal-test): Style fix. 2021-04-21 23:15:56 +02:00
Mattias Engdegård
a7cc19e5ff Don't erroneously declare mark as error-free
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns)
(side-effect-and-error-free-fns):
`mark` is side-effect-free but not error-free.
2021-04-21 22:52:17 +02:00
Andrea Corallo
de16621b51 * lisp/emacs-lisp/comp.el (batch-byte-native-compile-for-bootstrap): Fix typo. 2021-04-21 17:36:59 +02:00
Andrea Corallo
f842816125 Fix native compiler string hash consing strategy (bug#47868)
* test/src/comp-tests.el (comp-test-47868-1): Add new test.
	* test/src/comp-test-funcs.el (comp-test-47868-1-f)
	(comp-test-47868-2-f): New functions.
	* lisp/emacs-lisp/comp.el (comp-imm-equal-test): Define new hash
	tanble test.
	(comp-data-container): Use it.
	(comp-final, comp-run-async-workers): have comp required before
	reading dumped hashes so that `comp-imm-equal-test' is defined.
2021-04-21 17:36:59 +02:00
Stefan Monnier
9e5290aecf * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Fix bug#47925
In order to correctly detect the case of the "new style" with an empty body,
remove the old optional arguments `init-value`, `lighter`, and `keymap`,
so we can distinguish the "nil arg" from the "absent arg" cases.
2021-04-20 19:40:09 -04:00
Andrea Corallo
b5c76530fa Merge remote-tracking branch 'savannah/master' into native-comp 2021-04-19 18:46:50 +02:00
Stefan Kangas
0a4dc70830 ; Normalize and add missing first and last lines 2021-04-19 12:21:01 +02:00
Stefan Monnier
5c07cd0f15 * lisp/emacs-lisp/debug.el (debug): Fix (bug#47588)
Don't bind `load-read-function` to nil but to its actual default value.
Actually, I'm not sure it's worth the trouble rebinding this var, but
if we do, then we should bind it to a valid value rather than to nil.

* lisp/emacs-lisp/edebug.el (edebug--eval-defun): Re-install our advice
if needed.
2021-04-18 01:03:43 -04:00
Stefan Monnier
556c23cd17 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Tweak further
Suggested by Lars Ingebrigtsen <larsi@gnus.org>.
2021-04-17 09:57:01 -04:00
Eli Zaretskii
1789dcdb35 Improve documentation of 'map-y-or-n-p'
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p): Doc fix.  (Bug#47833)

* doc/lispref/minibuf.texi (Multiple Queries): Fix the wording in
the description of 'map-y-or-n-p'.
2021-04-17 11:24:04 +03:00
Stefan Monnier
d262138383 * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Improve C-h f output
Suggested by Michael Heerdegen <michael_heerdegen@web.de>.
2021-04-16 23:40:51 -04:00
Stefan Kangas
fb9f5501d8 ; Fix typos: emacs lisp -> Emacs Lisp 2021-04-16 14:54:02 +02:00
Stefan Kangas
289ec2d911 ; Remove some useless comments 2021-04-16 14:54:02 +02:00
Ashish SHUKLA
f9c1008ced * lisp/emacs-lisp/comp.el (comp-effective-async-max-jobs): Handle BSD. 2021-04-16 11:13:09 +02:00
Stefan Monnier
0c3ce42c8f * lisp/emacs-lisp/bindat.el: Allow non-fixed size of strz
(bindat--unpack-strz): Allow `len` to be nil.
(bindat--pack-strz): New function.
(bindat--type) <strz>: Make `len` arg optional.
(bindat-type): Adjust debug spec and docstring accordingly.

* doc/lispref/processes.texi (Bindat Types): Adjust accordingly.
2021-04-15 11:28:06 -04:00
Mattias Engdegård
7893945cc8 Add condition-case success handler (bug#47677)
Allow a condition-case handler on the form (:success BODY) to be
specified as the success continuation of the protected form, with
the specified variable bound to its result.

* src/eval.c (Fcondition_case): Update the doc string.
(internal_lisp_condition_case): Implement in interpreter.
(syms_of_eval): Defsym :success.
* lisp/emacs-lisp/bytecomp.el (byte-compile-condition-case):
Implement in byte-compiler.
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Allow self-TCO
from success handler.
* doc/lispref/control.texi (Handling Errors): Update manual.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases)
(bytecomp-condition-case-success):
* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs--labels):
Add test cases.
2021-04-15 15:41:13 +02:00
Stefan Monnier
86daa721bb * lisp/emacs-lisp/eieio-core.el (list-of): Don't quote lambda 2021-04-13 23:28:04 -04:00
Andrea Corallo
b064ddd3f6 Merge remote-tracking branch 'savannah/master' into native-comp 2021-04-13 12:06:23 +02:00
Andrea Corallo
70adc28e97 * lisp/emacs-lisp/comp-cstr.el (comp-cstr-union-1-no-mem): (not null) => t. 2021-04-13 12:05:33 +02:00
Andrea Corallo
3062480309 * lisp/emacs-lisp/comp-cstr.el (comp-normalize-valset): Remove duplicates. 2021-04-13 12:05:33 +02:00
Stefan Monnier
214dfbfea0 Don't version-control generated file grammat-wy.el
This file is needed for CEDET's bootstrap, tho, so we now keep a copy of it
under version control in `gram-wy-boot.el`, very much like we do with
the `ldefs-boot.el` copy of `loaddefs.el`.

* lisp/cedet/semantic/grm-wy-boot.el: Rename from
`lisp/cedet/semantic/grammar-wy.el`.

* lisp/cedet/semantic/grammar.el: Load `grm-wy-boot.el` if
`grammar-wy.el` hasn't been generated yet.

* admin/update_autogen: Also refresh `grm-wy-boot.el`.

* admin/grammars/Makefile.in (WISENT): Add `grammar-wy.el` to the
generated files.

* .gitignore: Add `grammar-wy.el`.
2021-04-12 22:10:38 -04:00
Stefan Monnier
f63da590fd * lisp/emacs-lisp/smie.el: Fix URL. Remove redundant :group args
(smie-indent-forward-token): Improve error message.
(smie--funcall): New function.
(smie-indent-calculate): Use it.
2021-04-12 13:01:06 -04:00
Stefan Monnier
c42dc493d1 * lisp/emacs-lisp/memory-report.el (memory-report--object-size-1): Simplify 2021-04-12 12:55:52 -04:00
Stefan Monnier
be75b08f82 * lisp/emacs-lisp/float-sup.el (pi): Actually mark it as obsolete 2021-04-12 12:53:53 -04:00
Stefan Monnier
0e2cf3b985 * lisp/emacs-lisp/edebug.el (edebug--frame): Move docstring where it belongs 2021-04-12 12:51:28 -04:00
Stefan Monnier
6bec60ad31 (define-minor-mode): Warn about use of pre-Emacs-21 style args
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
Use `advertised-calling-convention` to avoid promoting the old
style arguments.  Emit a wanring when old-style arguments are used.
Massage the docstring accordingly.
* doc/lispref/modes.texi (Defining Minor Modes): Document the keyword
arguments rather than the old-style positional arguments.
2021-04-12 11:08:19 -04:00
Stefan Monnier
c45bfd3c4a * lisp/**/*.el: Avoid positional args to define-minor-mode
Back in Emacs-21.1, `define-minor-mode` grew keywords arguments to
replace its old positional arguments.  Let's make sure we don't use
the old-style any more.

* lisp/org/ox-beamer.el (org-beamer-mode-map): Move initialization
into declaration.
(org-beamer-mode):
* lisp/textmodes/tildify.el (tildify-mode):
* lisp/textmodes/sgml-mode.el (html-autoview-mode):
* lisp/textmodes/rst.el (rst-minor-mode):
* lisp/textmodes/remember.el (remember-notes-mode):
* lisp/textmodes/ispell.el (ispell-minor-mode):
* lisp/tar-mode.el (tar-subfile-mode):
* lisp/strokes.el (strokes-mode):
* lisp/so-long.el (so-long-minor-mode):
* lisp/shell.el (shell-dirtrack-mode):
* lisp/scroll-all.el (scroll-all-mode):
* lisp/ruler-mode.el (ruler-mode):
* lisp/rect.el (rectangle-mark-mode):
* lisp/progmodes/sh-script.el (sh-electric-here-document-mode):
* lisp/outline.el (outline-minor-mode):
* lisp/org/org.el (org-cdlatex-mode):
* lisp/org/org-table.el (org-table-header-line-mode)
(org-table-follow-field-mode, orgtbl-mode):
* lisp/org/org-src.el (org-src-mode):
* lisp/org/org-list.el (org-list-checkbox-radio-mode):
* lisp/org/org-indent.el (org-indent-mode):
* lisp/org/org-capture.el (org-capture-mode):
* lisp/obsolete/pc-select.el (pc-selection-mode):
* lisp/obsolete/iswitchb.el (iswitchb-mode):
* lisp/net/rcirc.el (rcirc-omit-mode, rcirc-multiline-minor-mode)
(rcirc-track-minor-mode):
* lisp/net/goto-addr.el (goto-address-mode, goto-address-prog-mode):
* lisp/image-mode.el (image-minor-mode):
* lisp/ibuf-ext.el (ibuffer-auto-mode):
* lisp/gnus/gnus-cite.el (gnus-message-citation-mode):
* lisp/font-core.el (font-lock-mode):
* lisp/erc/erc.el (define-erc-module):
* lisp/erc/erc-track.el (erc-track-minor-mode):
* lisp/erc/erc-fill.el (erc-fill-mode):
* lisp/epa-mail.el (epa-mail-mode):
* lisp/emacs-lisp/checkdoc.el (checkdoc-minor-mode):
* lisp/dirtrack.el (dirtrack-mode, dirtrack-debug-mode):
* lisp/dired-aux.el (dired-isearch-filenames-mode):
* lisp/cedet/semantic/idle.el (semantic-idle-scheduler-mode):
* lisp/cedet/semantic/decorate/mode.el (semantic-decoration-mode):
* lisp/autoarg.el (autoarg-mode, autoarg-kp-mode):
* lisp/vc/pcvs.el (cvs-minor-mode):
Avoid old-style positional args to `define-minor-mode`.
2021-04-11 23:47:14 -04:00
Mattias Engdegård
01a513bf0b Fix typo in cconv
* lisp/emacs-lisp/cconv.el (cconv-convert): Typo.
* test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--test-cases):
Add test case.
2021-04-11 12:41:21 +02:00
Philipp Stephani
53dfd85a7f Edebug: Disable backtracking when hitting a &define keyword.
Edebug doesn't deal well with backtracking out of definitions, see
Bug#41988.  Rather than trying to support this rare situation (e.g. by
implementing a multipass parser), prevent it by adding an implicit
gate.

* lisp/emacs-lisp/edebug.el (edebug--match-&-spec-op): Disable
backtracking when hitting a &define keyword.

* test/lisp/emacs-lisp/edebug-tests.el
(edebug-tests-duplicate-&define): New unit test.
(edebug-tests--duplicate-&define): New helper macro.

* doc/lispref/edebug.texi (Backtracking): Mention &define in the list
of constructs that disable backtracking.

* etc/NEWS: Document new behavior.
2021-04-10 18:19:49 +02:00