emacs/lisp/emacs-lisp
Stefan Kangas f05ce9e6bb Inline important-return-value declarations in cl-lib.el
These declarations are now properly added to 'cl-lib.el' itself, or to
'cl-loaddefs.el'.  This means that they will now correctly show up
immediately when loading 'cl-lib.el', instead of only after 'cl-macs.el'
is pulled in by an autoload.  C.f. Bug#76247.

I did not considered worth reproducing everywhere the list saying which
functions among the below belong to these two categories:
1. Functions that are side-effect-free except for the behavior of
   functions passed as argument.
2. Functions that mutate and return a list.

AFAIU, this is not actionable with our current byte-compiler, i.e. we
can't add any extra declarations based on it.  However, if the list
should be needed at some point, for example due to improvements in the
compiler, this commit will be where to find it.  In the worst case, and
with more work, it's also deducible from the source code itself.

* lisp/emacs-lisp/cl-macs.el: Move important-return-value declarations
from here...
* lisp/emacs-lisp/cl-extra.el (cl-map, cl-maplist, cl-mapcan)
(cl-mapcon, cl-some, cl-every, cl-notany, cl-notevery, cl-nreconc):
* lisp/emacs-lisp/cl-lib.el (cl-mapcar, cl-adjoin, cl-subst):
* lisp/emacs-lisp/cl-seq.el (cl-reduce, cl-remove, cl-remove-if)
(cl-remove-if-not, cl-delete, cl-delete-if, cl-delete-if-not)
(cl-remove-duplicates, cl-delete-duplicates, cl-substitute)
(cl-substitute-if, cl-substitute-if-not, cl-nsubstitute)
(cl-nsubstitute-if, cl-nsubstitute-if-not, cl-find, cl-find-if)
(cl-find-if-not, cl-position, cl-position-if, cl-position-if-not)
(cl-count, cl-count-if, cl-count-if-not, cl-mismatch, cl-search)
(cl-sort, cl-stable-sort, cl-merge, cl-member, cl-member-if)
(cl-member-if-not, cl-assoc, cl-assoc-if, cl-assoc-if-not, cl-rassoc)
(cl-rassoc-if, cl-rassoc-if-not, cl-union, cl-nunion, cl-intersection)
(cl-nintersection, cl-set-difference, cl-nset-difference)
(cl-set-exclusive-or, cl-nset-exclusive-or, cl-subsetp, cl-subst-if)
(cl-subst-if-not, cl-nsubst, cl-nsubst-if, cl-nsubst-if-not, cl-sublis)
(cl-nsublis, cl-tree-equal): ...to have them inline here.
2025-02-14 22:46:07 +01:00
..
advice.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
avl-tree.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
backquote.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
backtrace.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
benchmark.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
bindat.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
byte-opt.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
byte-run.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
bytecomp.el Fix some uses of %s for non-strings/names 2025-02-14 11:25:52 -05:00
cconv.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
chart.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
check-declare.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
checkdoc.el Merge from origin/emacs-30 2025-01-11 07:44:23 -05:00
cl-extra.el Inline important-return-value declarations in cl-lib.el 2025-02-14 22:46:07 +01:00
cl-generic.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
cl-indent.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cl-lib.el Inline important-return-value declarations in cl-lib.el 2025-02-14 22:46:07 +01:00
cl-macs.el Inline important-return-value declarations in cl-lib.el 2025-02-14 22:46:07 +01:00
cl-preloaded.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
cl-print.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
cl-seq.el Inline important-return-value declarations in cl-lib.el 2025-02-14 22:46:07 +01:00
comp-common.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
comp-cstr.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
comp-run.el ; Remove duplicate defvar in comp-run.el. 2025-01-29 18:13:41 +01:00
comp.el Use #$ for lambda fixups in native compilation data vectors 2025-02-01 17:02:50 +00:00
compat.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
cond-star.el Add autoload cookie and doc fix 2025-01-08 08:26:40 -05:00
copyright.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
crm.el Fix minibuffer-next-completion in completing-read-multiple 2025-02-11 17:47:21 +02:00
cursor-sensor.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
debug-early.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
debug.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
derived.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
disass.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
easy-mmode.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
easymenu.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
edebug.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eieio-base.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eieio-core.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eieio-custom.el Prefer defface's ':slant italic' to obsolete alias ':italic t' 2025-01-21 09:56:59 +01:00
eieio-datadebug.el Delete redundant lambdas around unary functions 2025-02-11 19:04:00 +01:00
eieio-opt.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eieio-speedbar.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
eieio.el ; * lisp/emacs-lisp/eieio.el (defclass): Add autoload cookie. 2025-02-10 14:37:45 +01:00
eldoc.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
elint.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
elp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ert-font-lock.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ert-x.el Fix finding C headers with clang 2025-01-06 20:04:20 +01:00
ert.el ; Add missing section marker to ert.el 2025-02-09 22:44:51 +01:00
ewoc.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
faceup.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
find-func.el Fix ERT / find-function type integration typos 2025-01-22 19:22:24 -08:00
float-sup.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
generate-lisp-file.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
generator.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
generic.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
gv.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
helper.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
hierarchy.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
icons.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
inline.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
let-alist.el Merge from origin/emacs-30 2025-02-01 07:39:56 -05:00
lisp-mnt.el ; Delete redundant defvar 2025-02-11 08:42:24 +01:00
lisp-mode.el Highlight multiple symbols in single quotes in CL strings 2025-02-12 04:15:07 +01:00
lisp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
loaddefs-gen.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00
macroexp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
map-ynp.el Use read-key in amp-y-or-n-p (bug#75886) 2025-02-06 05:36:18 +01:00
map.el ; Minor improvements for doc strings in map.el 2025-01-23 12:29:04 +02:00
memory-report.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
multisession.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
nadvice.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
oclosure.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
package-vc.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
package.el Add new function lm-package-version 2025-02-11 08:42:24 +01:00
pcase.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
pp.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
radix-tree.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
range.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
re-builder.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
regexp-opt.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
regi.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
ring.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
rmc.el Delete redundant lambdas around unary functions 2025-02-11 19:04:00 +01:00
rx.el ; * lisp/emacs-lisp/rx.el: Remove extra dash. (Bug#75603) 2025-01-16 17:15:42 +02:00
seq.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
shadow.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
shortdoc.el ; * lisp/emacs-lisp/shortdoc.el (map): Fix copy'n'pasto. 2025-01-23 13:29:26 +01:00
shorthands.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
smie.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
subr-x.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
syntax.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
tabulated-list.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
tcover-ses.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
testcover.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
text-property-search.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
thunk.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
timer-list.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
timer.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
tq.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
trace.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
track-changes.el Merge remote-tracking branch 'origin/emacs-30' 2025-02-05 20:21:03 -05:00
unsafep.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
vtable.el Update copyright year to 2025 2025-01-02 18:39:42 +01:00
warnings.el Merge branch 'scratch/no-purespace' into 'master' 2025-02-01 04:56:52 +01:00