Function: flymake--run-backend
flymake--run-backend is a byte-compiled function defined in
flymake.el.gz.
Signature
(flymake--run-backend BACKEND &optional ARGS)
Documentation
Run the backend BACKEND, re-enabling if necessary.
ARGS is a keyword-value plist passed to the backend along with a report function.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/flymake.el.gz
(defun flymake--run-backend (backend &optional args)
"Run the backend BACKEND, re-enabling if necessary.
ARGS is a keyword-value plist passed to the backend along
with a report function."
(flymake-log :debug "Running backend %s" backend)
(let ((run-token (gensym "backend-token")))
(flymake--with-backend-state backend state
(setf (flymake--state-running state) run-token
(flymake--state-disabled state) nil
(flymake--state-reported-p state) nil))
(condition-case-unless-debug err
(if (or (trusted-content-p) (function-get backend 'flymake-always-safe))
(apply backend (flymake-make-report-fn backend run-token)
args)
;; FIXME: Use `bwrap' for untrusted content.
;; FIXME: We emit a message *and* signal an error, because by default
;; Flymake doesn't display the warning it puts into "*flymake log*".
(message "Disabling %S in %s (untrusted content)"
backend (buffer-name))
(user-error "Disabling %S in %s (untrusted content)"
backend (buffer-name)))
(error
(flymake--disable-backend backend err)))))