(elint-current-buffer): Set mode-line-process.
(elint-init-env): Handle define-derived-mode.
Fix declare-function with unspecified arglist. Guard against odd
defalias statements (eg iso-insert's 8859-1-map).
(elint-add-required-env): Use a temp buffer.
(elint-form): Just print the function/macro name, not the whole form.
Return env unchanged if we fail to parse a macro.
(elint-forms): Guard against parse errors.
(elint-output): New function, to handle batch mode.
(elint-log-message): Add optional argument. Use elint-output.
(elint-set-mode-line): New function.
(byte-compile-file-form-autoload): Don't warn about unknown functions
where the autoload statement comes after the use.
(with-no-warnings): Give it a byte-hunk-handler like than of progn, so
that any handlers inside the body (eg require) are in turn respected.
(byte-compile-dest-file-function): New option.
(byte-compile-dest-file): Doc fix. Obey byte-compile-dest-file-function.
(byte-compile-cl-file-p): New function.
(byte-compile-eval): Only suppress noruntime warnings about cl functions
if the cl-functions warning is enabled. Use byte-compile-cl-file-p.
(byte-compile-eval): Check for non-nil byte-compile-cl-functions rather
than for file being previously loaded.
(byte-compile-find-cl-functions): Use byte-compile-cl-file-p.
(byte-compile-file-form-require): Handle the case where requiring a file
indirectly causes CL to be loaded.
Recognize immutable variables like most-positive-fixnum.
(byte-compile-setq-default): Check and warn if trying to assign
to an immutable variable, or a non-variable.
* international/mule.el (load-with-code-conversion):
* emacs-lisp/debug.el (debug):
* ediff-vers.el (ediff-rcs-get-output-buffer):
* dired.el (dired-internal-noselect): Don't let-bind
default-major-mode around code that doesn't use it.
E.g. buffer creation via get-buffer-create doesn't use it.
(checkdoc-force-history-flag, checkdoc-arguments-in-order-flag):
Add safe-local-variable booleanp.
(checkdoc-symbol-words): Add safe-local-variable for list of strings.
Clarify docstring that the value is strings not symbols.
(checkdoc-list-of-strings-p): New function.
since the next two variables cover them automatically now.
(elint-builtin-variables, elint-autoloaded-variables): New.
(elint-unknown-builtin-args): Remove all members, since they can be
parsed automatically now.
(elint-extra-errors): New.
(elint-env-add-env, elint-env-add-macro): Use cadr.
(elint-current-buffer): Use or. Change final message.
(elint-get-top-forms): Use line-end-position.
(elint-init-env): Use cadr. Handle autoload, declare-function,
and defalias.
(elint-add-required-env): Doc fix. Use or. Standardize error.
(regexp-assoc): Remove unused function.
(elint-top-form): Set elint-current-pos, to record the start of the
top-level form, for compilation-mode.
(elint-form): Trap errors in macro expansion. Use dolist.
(elint-unbound-variable): Use elint-builtin-variables and
elint-autoloaded-variables.
(elint-get-args): Use cadr, or.
(elint-check-cond-form): Use dolist, cadr.
(elint-check-condition-case-form): Doc fix. Use cadr.
Use elint-extra-errors.
(elint-log): New function.
(elint-error, elint-warning): Use elint-log for a bytecomp-style format.
Distinguish errors and warnings.
(elint-log-message): Use with-current-buffer. Inhibit read-only.
Use a bytecomp-style format.
(elint-clear-log): Preserve default-directory. Inhibit read-only.
(elint-get-log-buffer): Use compilation mode. Disable undo.
Don't truncate lines.
(elint-initialize): Set builtin and autoloaded variable lists.
Only process elint-unknown-builtin-args if non-nil.
(elint-find-builtin-variables, elint-find-autoloaded-variables):
New functions.
(elint-find-builtin-args): Doc fix. Handle "BODY...)".
(byte-compile-output-docform, byte-compile-file-form-defmumble)
(byte-compile-output-as-comment):
Give some more local variables with common names a "bytecomp-" prefix,
so as not to shadow things during compilation.