mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-27 07:41:28 -08:00
(byte-compile-warnings)
(byte-compile-warnings-safe-p): Add `mapcar'. (byte-compile-normal-call): Add option to suppress mapcar warning. (top-level): Use mapc rather than mapcar in eval-when-compile.
This commit is contained in:
parent
220a31ac48
commit
86da2828de
1 changed files with 20 additions and 16 deletions
|
|
@ -103,6 +103,7 @@
|
|||
;; not good to call from Lisp)
|
||||
;; `make-local' (dubious calls to
|
||||
;; `make-variable-buffer-local')
|
||||
;; `mapcar' (mapcar called for effect)
|
||||
;; byte-compile-compatibility Whether the compiler should
|
||||
;; generate .elc files which can be loaded into
|
||||
;; generic emacs 18.
|
||||
|
|
@ -359,7 +360,8 @@ Elements of the list may be:
|
|||
distinguished from macros and aliases).
|
||||
interactive-only
|
||||
commands that normally shouldn't be called from Lisp code.
|
||||
make-local calls to make-variable-buffer-local that may be incorrect."
|
||||
make-local calls to make-variable-buffer-local that may be incorrect.
|
||||
mapcar mapcar called for effect."
|
||||
:group 'bytecomp
|
||||
:type `(choice (const :tag "All" t)
|
||||
(set :menu-tag "Some"
|
||||
|
|
@ -367,7 +369,7 @@ Elements of the list may be:
|
|||
(const callargs) (const redefine)
|
||||
(const obsolete) (const noruntime)
|
||||
(const cl-functions) (const interactive-only)
|
||||
(const make-local))))
|
||||
(const make-local) (const mapcar))))
|
||||
(put 'byte-compile-warnings 'safe-local-variable 'byte-compile-warnings-safe-p)
|
||||
;;;###autoload
|
||||
(defun byte-compile-warnings-safe-p (x)
|
||||
|
|
@ -378,7 +380,8 @@ Elements of the list may be:
|
|||
(when (memq e '(free-vars unresolved
|
||||
callargs redefine
|
||||
obsolete noruntime
|
||||
cl-functions interactive-only make-local))
|
||||
cl-functions interactive-only
|
||||
make-local mapcar))
|
||||
e))
|
||||
x)
|
||||
x))))
|
||||
|
|
@ -2831,7 +2834,8 @@ That command is designed for interactive use only" fn))
|
|||
(defun byte-compile-normal-call (form)
|
||||
(if byte-compile-generate-call-tree
|
||||
(byte-compile-annotate-call-tree form))
|
||||
(when (and for-effect (eq (car form) 'mapcar))
|
||||
(when (and for-effect (eq (car form) 'mapcar)
|
||||
(memq 'mapcar byte-compile-warnings))
|
||||
(byte-compile-set-symbol-position 'mapcar)
|
||||
(byte-compile-warn
|
||||
"`mapcar' called for effect; use `mapc' or `dolist' instead"))
|
||||
|
|
@ -4238,18 +4242,18 @@ and corresponding effects."
|
|||
(assq 'byte-code (symbol-function 'byte-compile-form))
|
||||
(let ((byte-optimize nil) ; do it fast
|
||||
(byte-compile-warnings nil))
|
||||
(mapcar (lambda (x)
|
||||
(or noninteractive (message "compiling %s..." x))
|
||||
(byte-compile x)
|
||||
(or noninteractive (message "compiling %s...done" x)))
|
||||
'(byte-compile-normal-call
|
||||
byte-compile-form
|
||||
byte-compile-body
|
||||
;; Inserted some more than necessary, to speed it up.
|
||||
byte-compile-top-level
|
||||
byte-compile-out-toplevel
|
||||
byte-compile-constant
|
||||
byte-compile-variable-ref))))
|
||||
(mapc (lambda (x)
|
||||
(or noninteractive (message "compiling %s..." x))
|
||||
(byte-compile x)
|
||||
(or noninteractive (message "compiling %s...done" x)))
|
||||
'(byte-compile-normal-call
|
||||
byte-compile-form
|
||||
byte-compile-body
|
||||
;; Inserted some more than necessary, to speed it up.
|
||||
byte-compile-top-level
|
||||
byte-compile-out-toplevel
|
||||
byte-compile-constant
|
||||
byte-compile-variable-ref))))
|
||||
nil)
|
||||
|
||||
(run-hooks 'bytecomp-load-hook)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue