HOME


sh-3ll 1.0
DIR:/proc/self/root/usr/share/emacs/26.1/lisp/progmodes/
Upload File :
Current File : //proc/self/root/usr/share/emacs/26.1/lisp/progmodes/flymake.elc
;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\306\307\310\311\312\313\314\315\316\317&	\210\320\321\322\323\324DD\325\312\326\327\330&\210\320\331\322\323\332DD\333\312\326\327\334&\210\320\335\322\323\336DD\337\312\340\327\341&\210\320\342\322\323\343DD\344\312\326\327\345&\210\320\346\322\323\347DD\350\327\351%\210\320\352\322\323\353DD\354\327\355%\210\320\356\322\323\357DD\360\327\351%\210\361\356\362\340#\210\363\364\365\310#\210\366\211\203\257\211@\364N\203\250\365N\204\250\367\365\364N#\210A\266\202\202\216\210\361\364\365\340#\210\320\365\322\323\370DD\371\312\340\327\351&\210\320\372\322\323\373DD\374\327\375%\210\361\372\376\340#\210\320\377\322\323\201@DD\201A\312\340\327\351&\210\201B\201C!\203\201C\201D\201E\201F\211\211\211\201G\211\211\211\211\211\211\211\201F\201G\201F\211\211&\"\210\310\207" [require cl-lib thingatpt warnings compile mwheel custom-declare-group flymake nil "Universal on-the-fly syntax checker." :version "23.1" :link (custom-manual "(flymake) Top") :group tools custom-declare-variable flymake-error-bitmap funcall function #[0 "\300\207" [(flymake-double-exclamation-mark compilation-error)] 1] "Bitmap (a symbol) used in the fringe for indicating errors.\nThe value may also be a list of two elements where the second\nelement specifies the face for the bitmap.  For possible bitmap\nsymbols, see `fringe-bitmaps'.  See also `flymake-warning-bitmap'.\n\nThe option `flymake-fringe-indicator-position' controls how and where\nthis is used." "24.3" :type (choice (symbol :tag "Bitmap") (list :tag "Bitmap and face" (symbol :tag "Bitmap") (face :tag "Face"))) flymake-warning-bitmap #[0 "\300\207" [(exclamation-mark compilation-warning)] 1] "Bitmap (a symbol) used in the fringe for indicating warnings.\nThe value may also be a list of two elements where the second\nelement specifies the face for the bitmap.  For possible bitmap\nsymbols, see `fringe-bitmaps'.  See also `flymake-error-bitmap'.\n\nThe option `flymake-fringe-indicator-position' controls how and where\nthis is used." (choice (symbol :tag "Bitmap") (list :tag "Bitmap and face" (symbol :tag "Bitmap") (face :tag "Face"))) flymake-note-bitmap #[0 "\300\207" [(exclamation-mark compilation-info)] 1] "Bitmap (a symbol) used in the fringe for indicating info notes.\nThe value may also be a list of two elements where the second\nelement specifies the face for the bitmap.  For possible bitmap\nsymbols, see `fringe-bitmaps'.  See also `flymake-error-bitmap'.\n\nThe option `flymake-fringe-indicator-position' controls how and where\nthis is used." "26.1" (choice (symbol :tag "Bitmap") (list :tag "Bitmap and face" (symbol :tag "Bitmap") (face :tag "Face"))) flymake-fringe-indicator-position #[0 "\300\207" [left-fringe] 1] "The position to put Flymake fringe indicator.\nThe value can be nil (do not use indicators), `left-fringe' or `right-fringe'.\nSee `flymake-error-bitmap' and `flymake-warning-bitmap'." (choice (const left-fringe) (const right-fringe) (const :tag "No fringe indicators" nil)) flymake-start-syntax-check-on-newline #[0 "\300\207" [t] 1] "Start syntax check if newline char was added/removed from the buffer." boolean flymake-no-changes-timeout #[0 "\300\207" [0.5] 1] "Time to wait after last change before automatically checking buffer.\nIf nil, never start checking buffer automatically like this." number flymake-gui-warnings-enabled #[0 "\300\207" [t] 1] "Enables/disables GUI warnings." make-obsolete-variable "it no longer has any effect." defvaralias flymake-start-syntax-check-on-find-file flymake-start-on-flymake-mode (saved-value saved-variable-comment) put #[0 "\300\207" [t] 1] "Start syntax check when `flymake-mode' is enabled.\nSpecifically, start it when the buffer is actually displayed." flymake-log-level #[0 "\300\207" [-1] 1] "Obsolete and ignored variable." integer "it is superseded by `warning-minimum-log-level.'" flymake-wrap-around #[0 "\300\207" [t] 1] "If non-nil, moving to errors wraps around buffer boundaries." fboundp define-fringe-bitmap flymake-double-exclamation-mark vector 0 102] 20)
#@34 Timer for starting syntax check.
(defvar flymake-timer nil (#$ . 4533))
(make-variable-buffer-local 'flymake-timer)
#@41 Time at which syntax check was started.
(defvar flymake-check-start-time nil (#$ . 4655))
(make-variable-buffer-local 'flymake-check-start-time)
#@69 Do actual work for `flymake-log'.

(fn LEVEL SUBLOG MSG &rest ARGS)
(defalias 'flymake--log-1 #[899 "\302\303\304\206\305p#\306\305D\307\310#\247\203&\3118\206(\312\202(\313$*\207" [warning-type-format warning-minimum-level :emergency format " [%s %s]" flymake display-warning apply format-message (:emergency :error :warning :debug :debug) :error "*Flymake log*"] 10 (#$ . 4806)])
#@33 Go to the *Flymake log* buffer.
(defalias 'flymake-switch-to-log-buffer #[0 "\300\301!\207" [switch-to-buffer "*Flymake log*"] 2 (#$ . 5211) nil])
#@289 Log, at level LEVEL, the message MSG formatted with ARGS.
LEVEL is passed to `display-warning', which is used to display
the warning.  If this form is included in a byte-compiled file,
the generated warning contains an indication of the file that
generated it.

(fn LEVEL MSG &rest ARGS)
(defalias 'flymake-log '(macro . #[642 "\301\302!\205\302J\211\205?\205\303\304\305!!!\306\307DBBBB\207" [load-file-name boundp byte-compile-current-file intern file-name-nondirectory file-name-sans-extension flymake--log-1 quote] 10 (#$ . 5365)]))
#@78 Format TEXT with ARGS and signal an error for Flymake.

(fn TEXT &rest ARGS)
(defalias 'flymake-error #[385 "\300\301#\302\303\304#\210\305\306P!\207" [apply format-message flymake--log-1 :error flymake error "[Flymake] "] 7 (#$ . 5922)])
#@72 compiler-macro for inlining `flymake--diag-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-p (and (memq (type-of cl-x) cl-struct-flymake--diag-tags) t)) nil] 9 (#$ . 6171)])
(put 'flymake--diag-p 'compiler-macro 'flymake--diag-p--cmacro)
#@13 

(fn CL-X)
(defalias 'flymake--diag-p #[257 "\301!>\205	\302\207" [cl-struct-flymake--diag-tags type-of t] 3 (#$ . 6523)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put flymake--diag-p side-effect-free error-free put flymake--diag cl-deftype-satisfies] 5)
#@77 compiler-macro for inlining `flymake--diag-buffer'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-buffer--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-buffer (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 1)) nil] 9 (#$ . 6809)])
(put 'flymake--diag-buffer 'compiler-macro 'flymake--diag-buffer--cmacro)
#@101 Access slot "buffer" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-buffer #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 1] 5 (#$ . 7227)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--diag-buffer side-effect-free t] 4)
#@74 compiler-macro for inlining `flymake--diag-beg'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-beg--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-beg (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 2)) nil] 9 (#$ . 7616)])
(put 'flymake--diag-beg 'compiler-macro 'flymake--diag-beg--cmacro)
#@98 Access slot "beg" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-beg #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 2] 5 (#$ . 8018)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--diag-beg side-effect-free t] 4)
#@74 compiler-macro for inlining `flymake--diag-end'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-end--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-end (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 3)) nil] 9 (#$ . 8398)])
(put 'flymake--diag-end 'compiler-macro 'flymake--diag-end--cmacro)
#@98 Access slot "end" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-end #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 3] 5 (#$ . 8800)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--diag-end side-effect-free t] 4)
#@75 compiler-macro for inlining `flymake--diag-type'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-type--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-type (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 4)) nil] 9 (#$ . 9180)])
(put 'flymake--diag-type 'compiler-macro 'flymake--diag-type--cmacro)
#@99 Access slot "type" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-type #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 4] 5 (#$ . 9587)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--diag-type side-effect-free t] 4)
#@75 compiler-macro for inlining `flymake--diag-text'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-text--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-text (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 5)) nil] 9 (#$ . 9970)])
(put 'flymake--diag-text 'compiler-macro 'flymake--diag-text--cmacro)
#@99 Access slot "text" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-text #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 5] 5 (#$ . 10377)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--diag-text side-effect-free t] 4)
#@78 compiler-macro for inlining `flymake--diag-backend'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--diag-backend--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--diag-backend (or (flymake--diag-p cl-x) (signal 'wrong-type-argument (list 'flymake--diag cl-x))) (aref cl-x 6)) nil] 9 (#$ . 10761)])
(put 'flymake--diag-backend 'compiler-macro 'flymake--diag-backend--cmacro)
#@102 Access slot "backend" of `(flymake--diag (:constructor flymake--diag-make))' struct CL-X.

(fn CL-X)
(defalias 'flymake--diag-backend #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 6] 5 (#$ . 11185)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put flymake--diag-backend side-effect-free t defalias copy-flymake--diag copy-sequence] 4)
#@114 compiler-macro for inlining `flymake--diag-make'.

(fn CL-WHOLE &cl-quote &key BUFFER BEG END TYPE TEXT BACKEND)
(defalias 'flymake--diag-make--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\211\203R\211@\307>\203:\211AA\262\202'\310>A@\203I\311\262\202'\312\313@\"\210\202'\210\314\315\316\311\311&\207" [plist-member :buffer :beg :end :type :text :backend (:buffer :beg :end :type :text :backend :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:buffer :beg :end :type :text :backend)" cl--defsubst-expand (buffer beg end type text backend) (cl-block flymake--diag-make (record 'flymake--diag buffer beg end type text backend))] 20 (#$ . 11631)])
(put 'flymake--diag-make 'compiler-macro 'flymake--diag-make--cmacro)
#@94 Constructor for objects of type `flymake--diag'.

(fn &key BUFFER BEG END TYPE TEXT BACKEND)
(defalias 'flymake--diag-make #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\211\203R\211@\307>\203:\211AA\262\202'\310>A@\203I\311\262\202'\312\313@\"\210\202'\210\314\315&\207" [plist-member :buffer :beg :end :type :text :backend (:buffer :beg :end :type :text :backend :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:buffer :beg :end :type :text :backend)" record flymake--diag] 15 (#$ . 12462)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put flymake--diag-make side-effect-free t cl-struct-define flymake--diag nil cl-structure-object record ((cl-tag-slot) (buffer) (beg) (end) (type) (text) (backend)) cl-struct-flymake--diag-tags] 11)
#@211 Make a Flymake diagnostic for BUFFER's region from BEG to END.
TYPE is a key to `flymake-diagnostic-types-alist' and TEXT is a
description of the problem detected in this region.

(fn BUFFER BEG END TYPE TEXT)
(defalias 'flymake-make-diagnostic #[1285 "\300\301\302&\207" [record flymake--diag nil] 13 (#$ . 13347)])
#@222 Get Flymake diagnostics in region determined by BEG and END.

If neither BEG or END is supplied, use the whole buffer,
otherwise if BEG is non-nil and END is nil, consider only
diagnostics at BEG.

(fn &optional BEG END)
(defalias 'flymake-diagnostics #[512 "\300\301\302\303\304$\"\207" [mapcar #[257 "\300\301\"\207" [overlay-get flymake-diagnostic] 4 "\n\n(fn OV)"] flymake--overlays :beg :end] 9 (#$ . 13682)])
#@85 Make PUBLIC an alias for INTERNAL, add doc using THING.

(fn PUBLIC INTERNAL THING)
(defalias 'flymake--diag-accessor '(macro . #[771 "\300\301\302\303\304!\"\305B\257\207" [defsubst (diag) format "Get Flymake diagnostic DIAG's %s." symbol-name (diag)] 10 (#$ . 14107)]))
#@50 Get Flymake diagnostic DIAG's buffer.

(fn DIAG)
(defalias 'flymake-diagnostic-buffer #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 1] 5 (#$ . 14390)])
(put 'flymake-diagnostic-buffer 'byte-optimizer 'byte-compile-inline-expand)
#@48 Get Flymake diagnostic DIAG's text.

(fn DIAG)
(defalias 'flymake-diagnostic-text #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 5] 5 (#$ . 14714)])
(put 'flymake-diagnostic-text 'byte-optimizer 'byte-compile-inline-expand)
#@48 Get Flymake diagnostic DIAG's type.

(fn DIAG)
(defalias 'flymake-diagnostic-type #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 4] 5 (#$ . 15032)])
(put 'flymake-diagnostic-type 'byte-optimizer 'byte-compile-inline-expand)
#@47 Get Flymake diagnostic DIAG's beg.

(fn DIAG)
(defalias 'flymake-diagnostic-beg #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 2] 5 (#$ . 15350)])
(put 'flymake-diagnostic-beg 'byte-optimizer 'byte-compile-inline-expand)
#@47 Get Flymake diagnostic DIAG's end.

(fn DIAG)
(defalias 'flymake-diagnostic-end #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 3] 5 (#$ . 15665)])
(put 'flymake-diagnostic-end 'byte-optimizer 'byte-compile-inline-expand)
#@51 Get Flymake diagnostic DIAG's backend.

(fn DIAG)
(defalias 'flymake-diagnostic-backend #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 6] 5 (#$ . 15980)])
(put 'flymake-diagnostic-backend 'byte-optimizer 'byte-compile-inline-expand)
#@327 Get flymake-related overlays.
If BEG is non-nil and END is nil, consider only `overlays-at'
BEG. Otherwise consider `overlays-in' the region comprised by BEG
and END, defaulting to the whole buffer.  Remove all that do not
verify FILTER, a function, and sort them by COMPARE (using KEY).

(fn &key BEG END FILTER COMPARE KEY)
(defalias 'flymake--overlays #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\211\203J\211@\306>\2032\211AA\262\202\307>A@\203A\310\262\202\311\312@\"\210\202\210\214~\210\313\314\315\316\317\320!\321\"\322\323%\203m\204m\324\325\"\202{\326\206te\206zd\"\"\203\215\327\305\206\211\330$\202\216\211\262)\207" [plist-member :beg :end :filter :compare :key (:beg :end :filter :compare :key :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:beg :end :filter :compare :key)" cl-remove-if-not make-byte-code 257 "\301\302\"\205\300?\206\300!\207" vconcat vector [overlay-get flymake-diagnostic] 4 "\n\n(fn OV)" overlays-at t overlays-in cl-sort identity] 13 (#$ . 16308)])
#@63 Delete all Flymake overlays in BUFFER.

(fn &optional FILTER)
(defalias 'flymake-delete-own-overlays #[256 "\300\301\302\303\"\"\207" [mapc delete-overlay flymake--overlays :filter] 6 (#$ . 17407)])
(byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\210\300\311\312\313\304\314%\210\315\316\317\306#\210\315\316\320\321\314!\206(\322#\210\315\323\317\301#\210\315\323\320\321\314!\206:\322#\207" [custom-declare-face flymake-error ((((supports :underline (:style wave))) :underline (:style wave :color "Red1")) (t :inherit error)) "Face used for marking error regions." :version "24.4" flymake-warning ((((supports :underline (:style wave))) :underline (:style wave :color "deep sky blue")) (t :inherit warning)) "Face used for marking warning regions." flymake-note ((((supports :underline (:style wave))) :underline (:style wave :color "yellow green")) (t :inherit warning)) "Face used for marking note regions." "26.1" put flymake-warnline face-alias obsolete-face purecopy t flymake-errline] 6)
#@184 Compute BUFFER's region (BEG . END) corresponding to LINE and COL.
If COL is nil, return a region just for LINE.  Return nil if the
region is invalid.

(fn BUFFER LINE &optional COL)
(defalias 'flymake-diag-region #[770 "\3001zrq\210\301]\302d\303\"^\212eb\210\211Sy\210\304\305\203h\211\306V\262\203hSu\210`\30717\310\311!0\2029\210\312\211\203G\211U\204G\211\206PTbdW\205P`\211\203ZB\202c \211\262!B\266\203\202r !B\266\202\266\202)\262)0\207\313\314\315\316%\210\312\207" [(debug error) 1 line-number-at-pos absolute #[0 "\300 \210m\203\301\302!\207`\207" [back-to-indentation line-beginning-position 0] 2] #[257 "\300\210\301x\210`=\203\302\303!\207`\207" [nil " 	\f	\n" line-beginning-position 2] 3 "\n\n(fn BEG)"] 0 (error) end-of-thing sexp nil flymake--log-1 :warning flymake "Invalid region line=%s col=%s"] 12 (#$ . 18432)])
#@2684 Special hook of Flymake backends that check a buffer.

The functions in this hook diagnose problems in a buffer's
contents and provide information to the Flymake user interface
about where and how to annotate problems diagnosed in a buffer.

Each backend function must be prepared to accept an arbitrary
number of arguments:

* the first argument is always REPORT-FN, a callback function
  detailed below;

* the remaining arguments are keyword-value pairs in the
  form (:KEY VALUE :KEY2 VALUE2...).  Currently, Flymake provides
  no such arguments, but backend functions must be prepared to
  accept and possibly ignore any number of them.

Whenever Flymake or the user decides to re-check the buffer,
backend functions are called as detailed above and are expected
to initiate this check, but aren't required to complete it before
exiting: if the computation involved is expensive, especially for
large buffers, that task can be scheduled for the future using
asynchronous processes or other asynchronous mechanisms.

In any case, backend functions are expected to return quickly or
signal an error, in which case the backend is disabled.  Flymake
will not try disabled backends again for any future checks of
this buffer.  Certain commands, like turning `flymake-mode' off
and on again, reset the list of disabled backends.

If the function returns, Flymake considers the backend to be
"running". If it has not done so already, the backend is
expected to call the function REPORT-FN with a single argument
REPORT-ACTION also followed by an optional list of keyword-value
pairs in the form (:REPORT-KEY VALUE :REPORT-KEY2 VALUE2...).

Currently accepted values for REPORT-ACTION are:

* A (possibly empty) list of diagnostic objects created with
  `flymake-make-diagnostic', causing Flymake to annotate the
  buffer with this information.

  A backend may call REPORT-FN repeatedly in this manner, but
  only until Flymake considers that the most recently requested
  buffer check is now obsolete because, say, buffer contents have
  changed in the meantime. The backend is only given notice of
  this via a renewed call to the backend function. Thus, to
  prevent making obsolete reports and wasting resources, backend
  functions should first cancel any ongoing processing from
  previous calls.

* The symbol `:panic', signaling that the backend has encountered
  an exceptional situation and should be disabled.

Currently accepted REPORT-KEY arguments are:

* `:explanation' value should give user-readable details of
  the situation encountered, if any.

* `:force': value should be a boolean suggesting that Flymake
  consider the report even if it was somehow unexpected.
(defvar flymake-diagnostic-functions nil (#$ . 19318))
#@1216 Alist ((KEY . PROPS)*) of properties of Flymake diagnostic types.
KEY designates a kind of diagnostic can be anything passed as
`:type' to `flymake-make-diagnostic'.

PROPS is an alist of properties that are applied, in order, to
the diagnostics of the type designated by KEY.  The recognized
properties are:

* Every property pertaining to overlays, except `category' and
  `evaporate' (see Info Node `(elisp)Overlay Properties'), used
  to affect the appearance of Flymake annotations.

* `bitmap', an image displayed in the fringe according to
  `flymake-fringe-indicator-position'.  The value actually
  follows the syntax of `flymake-error-bitmap' (which see).  It
  is overridden by any `before-string' overlay property.

* `severity', a non-negative integer specifying the diagnostic's
  severity.  The higher, the more serious.  If the overlay
  property `priority' is not specified, `severity' is used to set
  it and help sort overlapping overlays.

* `flymake-category', a symbol whose property list is considered
  a default for missing values of any other properties.  This is
  useful to backend authors when creating new diagnostic types
  that differ from an existing type by only a few properties.
(defvar flymake-diagnostic-types-alist '((:error (flymake-category . flymake-error)) (:warning (flymake-category . flymake-warning)) (:note (flymake-category . flymake-note))) (#$ . 22064))
(byte-code "\300\301\302\301#\210\300\301\303\304#\210\300\301\305\306\307!#\210\300\301\310\311#\210\300\312\302\312#\210\300\312\303\313#\210\300\312\305\306\314!#\210\300\312\310\315#\210\300\316\302\316#\210\300\316\303\317#\210\300\316\305\306\320!#\210\300\316\310\321#\207" [put flymake-error face bitmap flymake-error-bitmap severity warning-numeric-level :error mode-line-face compilation-error flymake-warning flymake-warning-bitmap :warning compilation-warning flymake-note flymake-note-bitmap :debug compilation-info] 5)
#@236 Look up PROP for TYPE in `flymake-diagnostic-types-alist'.
If TYPE doesn't declare PROP in either
`flymake-diagnostic-types-alist' or in the symbol of its
associated `flymake-category' return DEFAULT.

(fn TYPE PROP &optional DEFAULT)
(defalias 'flymake--lookup-type-property #[770 "\301\"\211\203C\211A\301\"\211\203\211A\202>\302\303\"\211\205'\2119\205'\304!\211\2050\305\"\211\203:\211A@\202<\266\203\266\202\202D\207" [flymake-diagnostic-types-alist assoc assoc-default flymake-category symbol-plist plist-member] 11 (#$ . 24009)])
#@34 

(fn BITMAP &optional RECURSED)
(defalias 'flymake--fringe-overlay-spec #[513 "9\203\301!\203\211\204\302J\303\"\207\205.\205.\304\305\306<\203*\202,CB#\207" [flymake-fringe-indicator-position boundp flymake--fringe-overlay-spec t propertize "!" display] 7 (#$ . 24574)])
#@60 Highlight buffer with info in DIAGNOSTIC.

(fn DIAGNOSTIC)
(defalias 'flymake--highlight-line #[257 "\302\303!>\204\304\305\306D\"\210\307H\303!>\204\"\304\305\306D\"\210\310H\"\211\205\260\311\303!>\204:\304\305\306D\"\210\312H	\"\313\314\311\315\"#\210\211\316\211:\203o@\262\211A\262\242\262\211\314=\204h\313#\210A\262\202K\266\317\211\320\321#\210\211\322\323#\210\211\324\325\326\320\"!#\210\211\327\330#\210\211\331\332\333!#\210\211\334\335\326\331\"\\#\266\313\336\337#\210\313\340#\207" [cl-struct-flymake--diag-tags flymake-diagnostic-types-alist make-overlay type-of signal wrong-type-argument flymake--diag 2 3 assoc-default 4 overlay-put category flymake-category nil #[771 "\300\301!\"\206\302\303\"\211\205\300\304!\"\262?\205\"\305#\207" [plist-member overlay-properties overlay-get flymake-category symbol-plist overlay-put] 7 "\n\n(fn OV PROP VALUE)"] bitmap flymake-error-bitmap face flymake-error before-string flymake--fringe-overlay-spec overlay-get help-echo #[771 "\300!r\301\302\303\304\305!\306\"\307$\216\310@\311\"\210\312\313\314!\315#*\207" [internal--before-with-selected-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord mapconcat flymake--diag-text flymake-diagnostics "\n"] 10 "\n\n(fn WINDOW OV POS)"] severity warning-numeric-level :error priority 100 evaporate t flymake-diagnostic] 10 (#$ . 24872)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias flymake-display-warning message-box nil make-obsolete "26.1"] 4)
#@773 Buffer-local hash table of a Flymake backend's state.
The keys to this hash table are functions as found in
`flymake-diagnostic-functions'. The values are structures
of the type `flymake--backend-state', with these slots:

`running', a symbol to keep track of a backend's replies via its
REPORT-FN argument. A backend is running if this key is
present. If nil, Flymake isn't expecting any replies from the
backend.

`diags', a (possibly empty) list of recent diagnostic objects
created by the backend with `flymake-make-diagnostic'.

`reported-p', a boolean indicating if the backend has replied
since it last was contacted.

`disabled', a string with the explanation for a previous
exceptional situation reported by the backend, nil if the
backend is operating normally.
(defvar flymake--backend-state nil (#$ . 26484))
(make-variable-buffer-local 'flymake--backend-state)
#@81 compiler-macro for inlining `flymake--backend-state-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--backend-state-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--backend-state-p (and (memq (type-of cl-x) cl-struct-flymake--backend-state-tags) t)) nil] 9 (#$ . 27364)])
(put 'flymake--backend-state-p 'compiler-macro 'flymake--backend-state-p--cmacro)
#@13 

(fn CL-X)
(defalias 'flymake--backend-state-p #[257 "\301!>\205	\302\207" [cl-struct-flymake--backend-state-tags type-of t] 3 (#$ . 27771)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put flymake--backend-state-p side-effect-free error-free put flymake--backend-state cl-deftype-satisfies] 5)
#@87 compiler-macro for inlining `flymake--backend-state-running'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--backend-state-running--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--backend-state-running (or (flymake--backend-state-p cl-x) (signal 'wrong-type-argument (list 'flymake--backend-state cl-x))) (aref cl-x 1)) nil] 9 (#$ . 28094)])
(put 'flymake--backend-state-running 'compiler-macro 'flymake--backend-state-running--cmacro)
#@120 Access slot "running" of `(flymake--backend-state (:constructor flymake--make-backend-state))' struct CL-X.

(fn CL-X)
(defalias 'flymake--backend-state-running #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--backend-state-tags type-of signal wrong-type-argument flymake--backend-state 1] 5 (#$ . 28581)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--backend-state-running side-effect-free t] 4)
#@90 compiler-macro for inlining `flymake--backend-state-reported-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--backend-state-reported-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--backend-state-reported-p (or (flymake--backend-state-p cl-x) (signal 'wrong-type-argument (list 'flymake--backend-state cl-x))) (aref cl-x 2)) nil] 9 (#$ . 29028)])
(put 'flymake--backend-state-reported-p 'compiler-macro 'flymake--backend-state-reported-p--cmacro)
#@123 Access slot "reported-p" of `(flymake--backend-state (:constructor flymake--make-backend-state))' struct CL-X.

(fn CL-X)
(defalias 'flymake--backend-state-reported-p #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--backend-state-tags type-of signal wrong-type-argument flymake--backend-state 2] 5 (#$ . 29530)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--backend-state-reported-p side-effect-free t] 4)
#@88 compiler-macro for inlining `flymake--backend-state-disabled'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--backend-state-disabled--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--backend-state-disabled (or (flymake--backend-state-p cl-x) (signal 'wrong-type-argument (list 'flymake--backend-state cl-x))) (aref cl-x 3)) nil] 9 (#$ . 29986)])
(put 'flymake--backend-state-disabled 'compiler-macro 'flymake--backend-state-disabled--cmacro)
#@121 Access slot "disabled" of `(flymake--backend-state (:constructor flymake--make-backend-state))' struct CL-X.

(fn CL-X)
(defalias 'flymake--backend-state-disabled #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--backend-state-tags type-of signal wrong-type-argument flymake--backend-state 3] 5 (#$ . 30478)])
(byte-code "\300\301\302\303#\300\207" [function-put flymake--backend-state-disabled side-effect-free t] 4)
#@85 compiler-macro for inlining `flymake--backend-state-diags'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'flymake--backend-state-diags--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block flymake--backend-state-diags (or (flymake--backend-state-p cl-x) (signal 'wrong-type-argument (list 'flymake--backend-state cl-x))) (aref cl-x 4)) nil] 9 (#$ . 30928)])
(put 'flymake--backend-state-diags 'compiler-macro 'flymake--backend-state-diags--cmacro)
#@118 Access slot "diags" of `(flymake--backend-state (:constructor flymake--make-backend-state))' struct CL-X.

(fn CL-X)
(defalias 'flymake--backend-state-diags #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-flymake--backend-state-tags type-of signal wrong-type-argument flymake--backend-state 4] 5 (#$ . 31405)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put flymake--backend-state-diags side-effect-free t defalias copy-flymake--backend-state copy-sequence] 4)
#@124 compiler-macro for inlining `flymake--make-backend-state'.

(fn CL-WHOLE &cl-quote &key RUNNING REPORTED-P DISABLED DIAGS)
(defalias 'flymake--make-backend-state--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\211\203D\211@\305>\203,\211AA\262\202\306>A@\203;\307\262\202\310\311@\"\210\202\210\312\313\314\307	\307				&	\207" [plist-member :running :reported-p :disabled :diags (:running :reported-p :disabled :diags :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:running :reported-p :disabled :diags)" cl--defsubst-expand (running reported-p disabled diags) (cl-block flymake--make-backend-state (record 'flymake--backend-state running reported-p disabled diags))] 16 (#$ . 31908)])
(put 'flymake--make-backend-state 'compiler-macro 'flymake--make-backend-state--cmacro)
#@104 Constructor for objects of type `flymake--backend-state'.

(fn &key RUNNING REPORTED-P DISABLED DIAGS)
(defalias 'flymake--make-backend-state #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\211\203D\211@\305>\203,\211AA\262\202\306>A@\203;\307\262\202\310\311@\"\210\202\210\312\313%\207" [plist-member :running :reported-p :disabled :diags (:running :reported-p :disabled :diags :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:running :reported-p :disabled :diags)" record flymake--backend-state] 11 (#$ . 32762)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put flymake--make-backend-state side-effect-free t cl-struct-define flymake--backend-state nil cl-structure-object record ((cl-tag-slot) (running) (reported-p) (disabled) (diags)) cl-struct-flymake--backend-state-tags] 11)
#@85 Bind BACKEND's STATE-VAR to its state, run BODY.

(fn BACKEND STATE-VAR &rest BODY)
(defalias 'flymake--with-backend-state '(macro . #[642 "\300\301!\302D\303\304\305BB\306\307BBEDDBB\207" [make-symbol "b" let* or gethash (flymake--backend-state) puthash ((flymake--make-backend-state) flymake--backend-state)] 12 (#$ . 33658)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put flymake--with-backend-state lisp-indent-function 2 put edebug-form-spec (sexp sexp &rest form)] 5)
#@53 Tell if Flymake has running backends in this buffer
(defalias 'flymake-is-running #[0 "\300 \207" [flymake-running-backends] 1 (#$ . 34166)])
#@337 Handle reports from BACKEND identified by TOKEN.
BACKEND, REPORT-ACTION and EXPLANATION, and FORCE conform to the calling
convention described in `flymake-diagnostic-functions' (which
see). Optional FORCE says to handle a report even if TOKEN was
not expected.

(fn BACKEND TOKEN REPORT-ACTION &key EXPLANATION FORCE &allow-other-keys)
(defalias 'flymake--handle-report #[899 "\303\304\"A@\303\305\"A@\306\"\307!	>\204 \310\311\300D\"\210\211\312H?\307!	>\2043\310\311\300D\"\210\211\312\313I\266\314\211\204H\315\316\"\202L\307!	>\204X\310\311\300D\"\210\317H\203f\315\320\"\202L\307!	>\204v\310\311\300D\"\210\321H\262\204\207\315\322\"\202L	=\204\234\204\234\315\323#\202L\324=\203\254\325\n\"\202L<\204\304\325\n\326\327\"\"\210\315\330	\"\202L\262\214~\210\203\337\331\332\333\334\335\336!\337\"\340\341%!\210\342\332\333\343\335\336!\344\"\345\346%\"\210\307!	>\204\310\311\300D\"\210\211\347\350\307	!	>\204\310\311\300D\"\210\347H\"I\266\n\2031\351\352\353\354
G\355 \nZ&\210\356\357 !\205K\360\357 !\205K\361\362 \363 \"?\205K\364 )\266\202\266\202\207" [flymake--backend-state cl-struct-flymake--backend-state-tags flymake-check-start-time plist-member :explanation :force gethash type-of signal wrong-type-argument 2 t nil flymake-error "Unexpected report from unknown backend %s" 3 "Unexpected report from disabled backend %s" 1 "Unexpected report from stopped backend %s" "Obsolete report from backend %s with explanation %s" :panic flymake--disable-backend format "Unknown action %S" "Expected report, but got unknown key %s" flymake-delete-own-overlays make-byte-code 257 "\300\302\303\"\304!	>\204\305\306\307D\"\210\211\310H\262=\207" vconcat vector [cl-struct-flymake--diag-tags overlay-get flymake-diagnostic type-of signal wrong-type-argument flymake--diag 6] 7 "\n\n(fn OV)" mapc "\302!\210\303!	>\204\304\305\306D\"\210\211\211\307\300I\207" [cl-struct-flymake--diag-tags flymake--highlight-line type-of signal wrong-type-argument flymake--diag 6] 5 "\n\n(fn DIAG)" 4 append flymake--log-1 :debug flymake "backend %s reported %d diagnostics in %.2f second(s)" float-time get-buffer flymake--diagnostics-buffer-name get-buffer-window cl-set-difference flymake-running-backends flymake-reporting-backends flymake-show-diagnostics-buffer] 19 (#$ . 34315)])
#@250 Make a suitable anonymous report function for BACKEND.
BACKEND is used to help Flymake distinguish different diagnostic
sources.  If provided, TOKEN helps Flymake distinguish between
different runs of the same backend.

(fn BACKEND &optional TOKEN)
(defalias 'flymake-make-report-fn #[513 "p\300\301\302\303\304#\305\"\306\307%\207" [make-byte-code 128 "\303\302!\205r\302q\210\304\305\300\301$)\207" vconcat vector [buffer-live-p apply flymake--handle-report] 6 "\n\n(fn &rest ARGS)"] 11 (#$ . 36704)])
#@125 Collect Flymake backends matching FN.
If MESSAGE-PREFIX, echo a message using that prefix

(fn FN &optional MESSAGE-PREFIX)
(defalias 'flymake--collect #[513 "\204\301\302!\210\303C\304\305\306\307\310\311\"\312\"\313\314%\"\210\203,\315\316\317\320\242\321##\210\211\242\207" [flymake--backend-state user-error "Flymake is not initialized" nil maphash make-byte-code 514 "\300!\205\f\301\301\242B\240\207" vconcat vector [] 5 "\n\n(fn BACKEND STATE)" message "%s%s" mapconcat #[257 "\300\301\"\207" [format "%s"] 4 "\n\n(fn S)"] ", "] 11 (#$ . 37224)])
#@53 Compute running Flymake backends in current buffer.
(defalias 'flymake-running-backends #[0 "\300\301\302\303!\205	\304\"\207" [flymake--collect flymake--backend-state-running called-interactively-p interactive "Running backends: "] 4 (#$ . 37800) nil])
#@54 Compute disabled Flymake backends in current buffer.
(defalias 'flymake-disabled-backends #[0 "\300\301\302\303!\205	\304\"\207" [flymake--collect flymake--backend-state-disabled called-interactively-p interactive "Disabled backends: "] 4 (#$ . 38061) nil])
#@55 Compute reporting Flymake backends in current buffer.
(defalias 'flymake-reporting-backends #[0 "\300\301\302\303!\205	\304\"\207" [flymake--collect flymake--backend-state-reported-p called-interactively-p interactive "Reporting backends: "] 4 (#$ . 38326) nil])
#@105 Disable BACKEND because EXPLANATION.
If it is running also stop it.

(fn BACKEND &optional EXPLANATION)
(defalias 'flymake--disable-backend #[513 "\302\303\304\305%\210\306\"\206\307\310\300\311\211\211\211%#\312!	>\204*\313\314\300D\"\210\211\211\315\311I\266\312!	>\204@\313\314\300D\"\210\211\211\316I\266\312!	>\204V\313\314\300D\"\210\211\211\317\320I\262\207" [flymake--backend-state cl-struct-flymake--backend-state-tags flymake--log-1 :warning flymake "Disabling backend %s because %s" gethash puthash record nil type-of signal wrong-type-argument 1 3 2 t] 11 (#$ . 38597)])
#@65 Run the backend BACKEND, reenabling if necessary.

(fn BACKEND)
(defalias 'flymake--run-backend #[257 "\302\303\304\305$\210\306\307!\310\"\206\311\312\300\313\211\211\211%#\314!	>\204,\315\316\300D\"\210\211\211\317I\266\314!	>\204B\315\316\300D\"\210\211\211\320\313I\266\314!	>\204X\315\316\300D\"\210\211\211\321\313I\266\314!	>\204n\315\316\300D\"\210\211\211\322\313I\266\3231\203\324\"!0\202\211\325\"\262\207" [flymake--backend-state cl-struct-flymake--backend-state-tags flymake--log-1 :debug flymake "Running backend %s" cl-gensym "backend-token" gethash puthash record nil type-of signal wrong-type-argument 1 3 4 2 (error) flymake-make-report-fn flymake--disable-backend] 11 (#$ . 39208)])
#@614 Start a syntax check for the current buffer.
DEFERRED is a list of symbols designating conditions to wait for
before actually starting the check.  If it is nil (the list is
empty), start it immediately, else defer the check to when those
conditions are met.  Currently recognized conditions are
`post-command', for waiting until the current command is over,
`on-display', for waiting until the buffer is actually displayed
in a window.  If DEFERRED is t, wait for all known conditions.

With optional FORCE run even disabled backends.

Interactively, with a prefix arg, FORCE is t.

(fn &optional DEFERRED FORCE)
(defalias 'flymake-start #[512 "\302=\203\n\303\202p\304C\304C\305\306\307\310\311\n\n\n\n$\312\"\313$\240\210\211\305\306\314\310\311\n\n#\315\"\313$\240\210\316>\203L\203L\317\320\242\321\304$\202u\322>\203b\323p!\204b\317\324\242\321\325$\202u\326 \327\330\305\331\332\310\311!\333\"\334\335%\"\266\202\207" [this-command flymake-check-start-time t (post-command on-display) nil make-byte-code 0 "\304\305\303\242\306#\210\307\302!\205r\302q\210\310\311\312\301\"\300\")\207" vconcat vector [remove-hook post-command-hook nil buffer-live-p flymake-start remove post-command] 4 "\303\304\302\242\305#\210\306\307\310\301\"\300\"\207" [remove-hook window-configuration-change-hook local flymake-start remove on-display] post-command add-hook post-command-hook append on-display get-buffer-window window-configuration-change-hook local float-time run-hook-wrapped flymake-diagnostic-functions 257 "\300\2048\211\303	\"\206\304\305\301\306\211\211\211%	#\307!\n>\204&\310\311\301D\"\210\211\312H\266\202\2038\313\314\315\316$\210\202<\317!\210\306\207" [flymake--backend-state cl-struct-flymake--backend-state-tags gethash puthash record nil type-of signal wrong-type-argument 3 flymake--log-1 :debug flymake "Backend %s is disabled, not starting" flymake--run-backend] 10 "\n\n(fn BACKEND)"] 16 (#$ . 39950) (list nil current-prefix-arg)])
#@27 Keymap for `flymake-mode'
(defvar flymake-mode-map (byte-code "\300 \211\207" [make-sparse-keymap] 2) (#$ . 41951))
#@93 Non-nil if Flymake mode is enabled.
Use the command `flymake-mode' to change this variable.
(defvar flymake-mode nil (#$ . 42073))
(make-variable-buffer-local 'flymake-mode)
#@1447 Toggle Flymake mode on or off.
With a prefix argument ARG, enable Flymake mode if ARG is
positive, and disable it otherwise.  If called from Lisp, enable
the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'.

Flymake is an Emacs minor mode for on-the-fly syntax checking.
Flymake collects diagnostic information from multiple sources,
called backends, and visually annotates the buffer with the
results.

Flymake performs these checks while the user is editing.  The
customization variables `flymake-start-on-flymake-mode',
`flymake-no-changes-timeout' and
`flymake-start-syntax-check-on-newline' determine the exact
circumstances whereupon Flymake decides to initiate a check of
the buffer.

The commands `flymake-goto-next-error' and
`flymake-goto-prev-error' can be used to navigate among Flymake
diagnostics annotated in the buffer.

The visual appearance of each type of diagnostic can be changed
in the variable `flymake-diagnostic-types-alist'.

Activation or deactivation of backends used by Flymake in each
buffer happens via the special hook
`flymake-diagnostic-functions'.

Some backends may take longer than others to respond or complete,
and some may decide to disable themselves if they are not
suitable for the current buffer. The commands
`flymake-running-backends', `flymake-disabled-backends' and
`flymake-reporting-backends' summarize the situation, as does the
special *Flymake log* buffer.

(fn &optional ARG)
(defalias 'flymake-mode #[256 "\304 \305=\203
?\202\306!\307V\211\203:\310\311\312\313\314$\210\310\315\316\313\314$\210\310\317\320\313\314$\210\321 \n\203Y\322\314!\210\202Y\323\311\312\314#\210\323\315\316\314#\210\323\317\320\314#\210\324 \210\203Y\325!\210\313\326\327\203c\330\202d\331\"\210\332\333!\203\210\304 \203x\211\304 \232\203\210\334\335\336\203\203\337\202\204\340#\266\210\341 \210\207" [flymake-mode flymake--backend-state flymake-start-on-flymake-mode flymake-timer current-message toggle prefix-numeric-value 0 add-hook after-change-functions flymake-after-change-function nil t after-save-hook flymake-after-save-hook kill-buffer-hook flymake-kill-buffer-hook make-hash-table flymake-start remove-hook flymake-delete-own-overlays cancel-timer run-hooks flymake-mode-hook flymake-mode-on-hook flymake-mode-off-hook called-interactively-p any " in current buffer" message "Flymake mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 42255) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar flymake-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\211%\207" [flymake-mode-map flymake-mode-hook variable-documentation put "Hook run after entering or leaving `flymake-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode flymake-mode flymake--mode-line-format nil] 6)
#@108 (Re)schedule an idle timer for checking the buffer.
Do it only if `flymake-no-changes-timeout' is non-nil.
(defalias 'flymake--schedule-timer-maybe #[0 "\203\302!\210	\205\303\304	!\305\306p$\211\207" [flymake-timer flymake-no-changes-timeout cancel-timer run-with-idle-timer seconds-to-time nil #[257 "\303!\205!r\211q\210\203	\203\304\305\306\307	$\210\310\311!\210\312\211)\207" [flymake-mode flymake-no-changes-timeout flymake-timer buffer-live-p flymake--log-1 :debug flymake "starting syntax check after idle for %s seconds" flymake-start t nil] 6 "\n\n(fn BUFFER)"]] 5 (#$ . 45178)])
#@23 Turn Flymake mode on.
(defalias 'flymake-mode-on #[0 "\300\301!\207" [flymake-mode 1] 2 (#$ . 45790)])
#@24 Turn Flymake mode off.
(defalias 'flymake-mode-off #[0 "\300\301!\207" [flymake-mode 0] 2 (#$ . 45899)])
(byte-code "\300\301\302\303#\210\300\304\302\303#\207" [make-obsolete flymake-mode-on flymake-mode "26.1" flymake-mode-off] 4)
#@89 Start syntax check for current buffer if it isn't already running.

(fn START STOP LEN)
(defalias 'flymake-after-change-function #[771 "{\203\211\301\232\203\302\303\304\305#\210\306\307!\210\310 \207" [flymake-start-syntax-check-on-newline "\n" flymake--log-1 :debug flymake "starting syntax check as new-line has been seen" flymake-start t flymake--schedule-timer-maybe] 8 (#$ . 46138)])
(defalias 'flymake-after-save-hook #[0 "\205
\301\302\303\304#\210\305\306!\207" [flymake-mode flymake--log-1 :debug flymake "starting syntax check as buffer was saved" flymake-start t] 4])
(defalias 'flymake-kill-buffer-hook #[0 "\205\301!\210\302\211\207" [flymake-timer cancel-timer nil] 2])
(defalias 'flymake-find-file-hook #[0 "\206	??\205\300 \210\302\303\304\305#\207" [flymake-mode flymake-diagnostic-functions flymake--log-1 :warning flymake "Turned on in `flymake-find-file-hook'"] 4])
#@435 Go to Nth next Flymake diagnostic that matches FILTER.
Interactively, always move to the next diagnostic.  With a prefix
arg, skip any diagnostics with a severity less than `:warning'.

If `flymake-wrap-around' is non-nil and no more next diagnostics,
resumes search from top.

FILTER is a list of diagnostic types found in
`flymake-diagnostic-types-alist', or nil, if no filter is to be
applied.

(fn &optional N FILTER INTERACTIVE)
(defalias 'flymake-goto-next-error #[768 "\206\301\302\303\304\305\306\307\310	!\311\"\312\313%\314\211\315V\262\203\"\316\202#\317\320\321&\322\304\305\323\307\310!\324\"\325\313%\"\203U\211\203I\326!\241\210\211\202V\205V\326!\241\202V\211S8\211\203v\321!b\210\205\213\327\330\331\332\"\333 `#\"\202\213\205\213\334\335\203\211\336\337\n\"\202\212\340\"\207" [flymake-wrap-around 1 flymake--overlays :filter make-byte-code 257 "\302\303\"\211\205!\300?\206!\304!	>\204\305\306\307D\"\210\211\310H\300>\207" vconcat vector [cl-struct-flymake--diag-tags overlay-get flymake-diagnostic type-of signal wrong-type-argument flymake--diag 4] 6 "\n\n(fn OV)" :compare 0 < > :key overlay-start cl-member-if "\300\211\301V\262\203\302!`V\207\302!`W\207" [0 overlay-start] 4 last message "%s" overlay-get help-echo selected-window user-error "No more Flymake errors%s" format " of types %s" ""] 14 (#$ . 47051) (byte-code "\301\205\302\303E\207" [current-prefix-arg 1 (:error :warning) t] 3)])
#@450 Go to Nth previous Flymake diagnostic that matches FILTER.
Interactively, always move to the previous diagnostic.  With a
prefix arg, skip any diagnostics with a severity less than
`:warning'.

If `flymake-wrap-around' is non-nil and no more previous
diagnostics, resumes search from bottom.

FILTER is a list of diagnostic types found in
`flymake-diagnostic-types-alist', or nil, if no filter is to be
applied.

(fn &optional N FILTER INTERACTIVE)
(defalias 'flymake-goto-prev-error #[768 "\300\206\301[#\207" [flymake-goto-next-error 1] 7 (#$ . 48531) (byte-code "\301\205\302\303E\207" [current-prefix-arg 1 (:error :warning) t] 3)])
#@9 Flymake
(defvar flymake-menu nil (#$ . 49181))
(easy-menu-do-define 'flymake-menu flymake-mode-map "Flymake" '("Flymake" ["Go to next problem" flymake-goto-next-error t] ["Go to previous problem" flymake-goto-prev-error t] ["Check now" flymake-start t] ["List all problems" flymake-show-diagnostics-buffer t] "--" ["Go to log buffer" flymake-switch-to-log-buffer t] ["Turn off Flymake" flymake-mode t]))
(defvar flymake--mode-line-format '(:eval (flymake--mode-line-format)))
(put 'flymake--mode-line-format 'risky-local-variable t)
#@40 Produce a pretty minor mode indicator.
(defalias 'flymake--mode-line-format #[0 "\304C\305\306\307\310\311\312!\313\"\314\315%\"\210\211\242\237\266\202\316 \317 \320 \321 \205'?\322\"\305\306\307\323\311\312!\324\"\325\326%\"\210\327\330\331\332\333\334\335
G\"\334\336
G\"\334\337
G\"\340\341\260\342\343 \344\345	#\210\344\346\347#\210\211\262\257\350\204u\351\202\216\203\205\352\353\334\354G\"E\202\216\203\215\355\202\216\356\211@A\211@A\211@A\211\205\272\357\327\360\333\342\343 \344\361\362#\210\211\262\257DC\266\203\266\207\206\305	??\205\362\363\364\365\366	\304C\305\306\307\310\311\312!\313\"\314\315%\"\210\211\242\237\266\202\367\"\"\370\371\372$\304\211\211\211\211:\203\270@\262\211A\262\242\262\373
\"\262\374\375\376#\262\204 \377\201@!Y\203\261\211\327\334\201AG\"\360\331\332\342\343 \f\344\312\201B\n\"\306\201C\201D\311\312!\201E\"\201F\201G\201H&#\210\344\312\201B\"\306\201C\201D\311\312!\201I\"\201F\201G\201H&#\210\266\202\333\334\201J\201K\334\201AG\"\360#\201K\334\201L\"\360##\334\201M\n#P\257\nC\244\262A\262\202\363\201N\350\304\211\211:\203\347\262\211A\262\242\262B\262\203\340\201OB\262A\262\202\300\211\237\266\204\201P\"B\266\206\"B\207" [flymake--backend-state flymake-menu mouse-wheel-down-event mouse-wheel-up-event nil maphash make-byte-code 514 "\300\300\242B\240\207" vconcat vector [] 5 "\n\n(fn K --CL-VAR--)" flymake-running-backends flymake-disabled-backends flymake-reporting-backends make-hash-table cl-set-difference "\302\303\304\305\306\307\300!\310\"\311\312%\313!	>\204\314\315\316D\"\210\317H\"\207" [cl-struct-flymake--backend-state-tags mapc make-byte-code 257 "\302!	>\204\303\304\305D\"\210\211\306H\300\307\310\"B#\207" vconcat vector [cl-struct-flymake--diag-tags type-of signal wrong-type-argument flymake--diag 4 puthash gethash] 9 "\n\n(fn DIAG)" type-of signal wrong-type-argument flymake--backend-state 4] 9 "\n\n(fn B STATE)" :propertize " Flymake" mouse-face mode-line-highlight help-echo format "%s known backends\n" "%s running\n" "%s disabled\n" "mouse-1: Display minor mode menu\n" "mouse-2: Show help for minor mode" keymap make-sparse-keymap define-key [mode-line down-mouse-1] [mode-line mouse-2] #[0 "\300\301!\207" [describe-function flymake-mode] 2 nil nil] append ("?" mode-line "No known backends") "Wait" compilation-mode-line-run "Waiting for %s running backend(s)" ("!" compilation-mode-line-run "All backends disabled") (nil nil nil) ":" face [mode-line mouse-1] flymake-switch-to-log-buffer cl-sort mapcar #[257 "\211\300\301\302\303!#B\207" [flymake--lookup-type-property severity warning-numeric-level :error] 7 "\n\n(fn TYPE)"] cl-union (:error :warning) > :key cdr gethash flymake--lookup-type-property mode-line-face compilation-error warning-numeric-level :warning "%d" mode-line 257 "\301\302!\211@\262!r\303\304\305\306\307!\310\"\311$\216\312@\313\"\210\314\315\300C\316#*\207" [internal--before-with-selected-window event-start make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord flymake-goto-prev-error 1 t] 8 "\n\n(fn EVENT)" "e" [internal--before-with-selected-window event-start make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord flymake-goto-next-error 1 t] "%s diagnostics of type %s\n" propertize "%s" "%s/%s: previous/next of this type" (:propertize "[") (:propertize " ") ((:propertize "]"))] 36 (#$ . 49720)])
(defvar flymake--diagnostics-buffer-source nil nil)
(make-variable-buffer-local 'flymake--diagnostics-buffer-source)
(defvar flymake-diagnostics-buffer-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\211\207" [make-sparse-keymap define-key "
" flymake-goto-diagnostic " " flymake-show-diagnostic] 5))
#@70 Show location of diagnostic at POS.

(fn POS &optional OTHER-WINDOW)
(defalias 'flymake-show-diagnostic #[513 "\301\206`\302\"\262\206\303\304!\305\306\"r\307!>\204%\310\311\312D\"\210\211\313Hq\210\314\315p\"!r\316\317\320\321\322!\323\"\324$\216\325@\326\"\210\307!>\204R\310\311\312D\"\210\324Hb\210\327\307!>\204g\310\311\312D\"\210\324H\307!>\204z\310\311\312D\"\210\330H\331#\210*\210p)\207" [cl-struct-flymake--diag-tags get-text-property tabulated-list-id user-error "Nothing at point" plist-get :diagnostic type-of signal wrong-type-argument flymake--diag 1 internal--before-with-selected-window display-buffer make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord pulse-momentary-highlight-region 3 highlight] 11 (#$ . 53639) (byte-code "`\300D\207" [t] 2)])
#@88 Show location of diagnostic at POS.
POS can be a buffer position or a button

(fn POS)
(defalias 'flymake-goto-diagnostic #[257 "\301\302\303\304\")\203\305!\202!!\207" [button pop-to-buffer flymake-show-diagnostic button-get type button-start] 6 (#$ . 54503) "d"])
(defalias 'flymake--diagnostics-buffer-entries #[0 "rq\210\302\303 \304\305\306$\307\211\211\211\211:\203\245@\262\212\310!	>\204*\311\312\313D\"\210\314Hb\210\315 `\316 Z)B\262\211A\262\242\262\310!	>\204Q\311\312\313D\"\210\317H\262\320\321\322\323\324\325\326!#\257\327\330\331\"\330\331\"\332\330\331\"\333\323	\334\335##\330\331\310\f!	>\204\221\311\312\313D\"\210\336H\"\337B$DB\262A\262\202\211\237\266\206)\207" [flymake--diagnostics-buffer-source cl-struct-flymake--diag-tags cl-sort flymake-diagnostics < :key flymake-diagnostic-beg nil type-of signal wrong-type-argument flymake--diag 2 line-number-at-pos line-beginning-position 4 :diagnostic :line :severity flymake--lookup-type-property severity warning-numeric-level :error vector format "%s" propertize face mode-line-face flymake-error 5 (mouse-face highlight help-echo "mouse-2: visit this diagnostic" face nil action flymake-goto-diagnostic mouse-action flymake-goto-diagnostic)] 17])
(defvar flymake-diagnostics-buffer-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [flymake-diagnostics-buffer-mode-hook variable-documentation put "Hook run after entering Flymake diagnostics mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp flymake-diagnostics-buffer-mode-map definition-name flymake-diagnostics-buffer-mode] 4)
(defvar flymake-diagnostics-buffer-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [flymake-diagnostics-buffer-mode-abbrev-table flymake-diagnostics-buffer-mode-map variable-documentation put purecopy "Keymap for `flymake-diagnostics-buffer-mode'." boundp flymake-diagnostics-buffer-mode-syntax-table definition-name flymake-diagnostics-buffer-mode (lambda (#1=#:def-tmp-var) (defvar flymake-diagnostics-buffer-mode-syntax-table #1#)) make-syntax-table "Syntax table for `flymake-diagnostics-buffer-mode'." (lambda (#1#) (defvar flymake-diagnostics-buffer-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `flymake-diagnostics-buffer-mode'." derived-mode-parent tabulated-list-mode] 5)
#@281 A mode for listing Flymake diagnostics.

In addition to any hooks its parent mode `tabulated-list-mode' might have run,
this mode runs the hook `flymake-diagnostics-buffer-mode-hook', as the final or penultimate step
during initialization.

\{flymake-diagnostics-buffer-mode-map}
(defalias 'flymake-diagnostics-buffer-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
=\204R\326
\325C#\210\327!\210\330\f!\210
\331\332 \333 \210)\334\335!\207" [delay-mode-hooks major-mode mode-name flymake-diagnostics-buffer-mode-map flymake-diagnostics-buffer-mode-syntax-table flymake-diagnostics-buffer-mode-abbrev-table make-local-variable t tabulated-list-mode flymake-diagnostics-buffer-mode "Flymake diagnostics" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table [("Line" 5 (lambda (l1 l2) (< (plist-get (car l1) :line) (plist-get (car l2) :line))) :right-align t) ("Col" 3 nil :right-align t) ("Type" 8 (lambda (l1 l2) (< (plist-get (car l1) :severity) (plist-get (car l2) :severity)))) ("Message" 0 t)] flymake--diagnostics-buffer-entries tabulated-list-init-header run-mode-hooks flymake-diagnostics-buffer-mode-hook local-abbrev-table tabulated-list-format tabulated-list-entries] 5 (#$ . 57224) nil])
(defalias 'flymake--diagnostics-buffer-name #[0 "\300\301p\"\207" [format "*Flymake diagnostics for %s*"] 3])
#@56 Show a list of Flymake diagnostics for current buffer.
(defalias 'flymake-show-diagnostics-buffer #[0 "\301 p\302!\206r\303!q\210\304 \210\211p)r\211q\210\305 \210\306p!)\207" [flymake--diagnostics-buffer-source flymake--diagnostics-buffer-name get-buffer get-buffer-create flymake-diagnostics-buffer-mode revert-buffer display-buffer] 5 (#$ . 58851) nil])
(byte-code "\300\301!\210\302\303!\207" [provide flymake require flymake-proc] 2)