]> git.eshelyaron.com Git - emacs.git/commit
Consolidate existing warnings about unused return values
authorMattias Engdegård <mattiase@acm.org>
Sat, 8 Apr 2023 17:17:17 +0000 (19:17 +0200)
committerMattias Engdegård <mattiase@acm.org>
Sat, 8 Apr 2023 17:34:30 +0000 (19:34 +0200)
commitaef996cd34f421da6540cccb9cc3ac2153458e36
treec2e20adfef2ebbdeb9f0854f9eee2dd21596708a
parent10b58633b566cf8f66f12e2126da3b43cd09dfc8
Consolidate existing warnings about unused return values

Move the warning about unused return values from calls to
side-effect-free functions from the source-level optimiser to the code
generator, where it can be unified with the special-purpose warning
about unused values from `mapcar`.  This change also cures spurious
duplicate warnings about the same code, makes the warnings amenable to
suppression through `with-suppressed-warnings`, and now warns about
some unused values that weren't caught before.

* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Move warning away from here.
* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings):
* lisp/emacs-lisp/bytecomp.el (byte-compile-warnings):
Doc string updates.
(byte-compile-form): Put the new warnings here.
(byte-compile-normal-call): Move mapcar warning away from here.
* lisp/emacs-lisp/bytecomp.el (byte-compile-ignore):
Compile args to `ignore` for value to avoid unused-value warnings, and
then discard the generated values immediately thereafter.  Mostly this
does not affect the generated code but in rare cases it might result
in slightly worse code.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings): Adapt test.
lisp/emacs-lisp/byte-opt.el
lisp/emacs-lisp/byte-run.el
lisp/emacs-lisp/bytecomp.el
test/lisp/emacs-lisp/bytecomp-tests.el