%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/compile.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; 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\303\304\305\306\307\310\307\311&\210\312\313\314\315\316DD\317\320\321%\210\312\322\314\315\323DD\324\320\321%\210\312\325\314\315\326DD\327\320\330%\210\312\331\314\315\332DD\333\320\334\335\336&\207" [require tool-bar comint custom-declare-group compilation nil "Run compiler as inferior of Emacs, parse error messages." :group tools processes custom-declare-variable compilation-mode-hook funcall function #[0 "\300\207" [nil] 1] "List of hook functions run by `compilation-mode'." :type hook compilation-start-hook #[0 "\300\207" [nil] 1] "Hook run after starting a new compilation process.\nThe hook is run with one argument, the new process." compilation-window-height #[0 "\300\207" [nil] 1] "Number of lines in a compilation window.\nIf nil, use Emacs default." (choice (const :tag "Default" nil) integer) compilation-transform-file-match-alist #[0 "\300\207" [(("/bin/[a-z]*sh\\'" nil))] 1] "Alist of regexp/replacements to alter file names in compilation errors.\nIf the replacement is nil, the file will not be considered an\nerror after all.  If not nil, it should be a regexp replacement\nstring." (repeat (list regexp string)) :version "27.1"] 8)
#@338 Hook run after `compilation-filter' has inserted a string into the buffer.
It is called with the variable `compilation-filter-start' bound
to the position of the start of the inserted text, and point at
its end.

If Emacs lacks asynchronous process support, this hook is run
after `call-process' inserts the grep output into the buffer.
(defvar compilation-filter-hook nil (#$ . 1611))
#@125 Position of the start of the text inserted by `compilation-filter'.
This is bound before running `compilation-filter-hook'.
(defvar compilation-filter-start nil (#$ . 2004))
#@249 This is how compilers number the first column, usually 1 or 0.
If this is buffer-local in the destination buffer, Emacs obeys
that value, otherwise it uses the value in the *compilation*
buffer.  This enables a major-mode to specify its own value.
(defvar compilation-first-column 1 (#$ . 2185))
#@247 Function to call to post-process filenames while parsing error messages.
It takes one arg FILENAME which is the name of a file as found
in the compilation output, and should return a transformed file name
or a buffer, the one which was compiled.
(defvar compilation-parse-errors-filename-function 'identity (#$ . 2488))
#@255 Function to call to customize the compilation process.
This function is called immediately before the compilation process is
started.  It can be used to set any variables or functions that are used
while processing the output of the compilation process.
(defvar compilation-process-setup-function 'ignore (#$ . 2815))
#@240 Function to compute the name of a compilation buffer.
The function receives one argument, the name of the major mode of the
compilation buffer.  It should return a string.
By default, it returns `(concat "*" (downcase name-of-mode) "*")'.
(defvar compilation-buffer-name-function 'compilation--default-buffer-name (#$ . 3140))
#@174 Functions to call when a compilation process finishes.
Each function is called with two arguments: the compilation buffer,
and a string describing how the process finished.
(defvar compilation-finish-functions nil (#$ . 3474))
#@44 List of compilation processes now running.
(defvar compilation-in-progress nil (#$ . 3707))
(byte-code "\301\236\204\302\300\301\303\304\305\306\307\310\311\312\313\314\"&D\"\210\301\207" [mode-line-modes compilation-in-progress add-to-list propertize "[Compiling] " help-echo "Compiling; mouse-2: Goto Buffer" mouse-face mode-line-highlight local-map make-mode-line-mouse-map mouse-2 compilation-goto-in-progress-buffer] 13)
#@35 Switch to the compilation buffer.
(defalias 'compilation-goto-in-progress-buffer #[0 "G\301V\203\302\303\304\305\306\"\307\310$!\207\203\302\311@!!\207\312\313!\207" [compilation-in-progress 1 switch-to-buffer completing-read "Several compilation buffers; switch to: " mapcar #[257 "\300\301!!\207" [buffer-name process-buffer] 4 "\n\n(fn PROCESS)"] nil t process-buffer error "No ongoing compilations"] 6 (#$ . 4143) nil])
#@53 Stem of message to print when no matches are found.
(defvar compilation-error "error" (#$ . 4582))
#@51 Arguments that were given to `compilation-start'.
(defvar compilation-arguments nil (#$ . 4687))
(defvar compilation-num-errors-found 0)
(defvar compilation-num-warnings-found 0)
(defvar compilation-num-infos-found 0)
(defconst compilation-mode-line-errors '(" [" (:propertize (:eval (int-to-string compilation-num-errors-found)) face compilation-error help-echo "Number of errors so far") " " (:propertize (:eval (int-to-string compilation-num-warnings-found)) face compilation-warning help-echo "Number of warnings so far") " " (:propertize (:eval (int-to-string compilation-num-infos-found)) face compilation-info help-echo "Number of informational messages so far") "]"))
#@55 Alist of values for `compilation-error-regexp-alist'.
(defvar compilation-error-regexp-alist-alist (byte-code "\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322BB\323\324\325\326\327\330\331\332BB\333\334\335\336BB\337\340\341\342\343\344BB\345BBBBBBBBBBBBBBBBBBBBBBBBBBBBB\207" [(absoft "^\\(?:[Ee]rror on \\|[Ww]arning on\\( \\)\\)?[Ll]ine[ 	]+\\([0-9]+\\)[ 	]+of[ 	]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) (ada "\\(warning: .*\\)? at \\([^ \n]+\\):\\([0-9]+\\)$" 2 3 nil (1)) (aix " in line \\([0-9]+\\) of file \\([^ \n]+[^. \n]\\)\\.? " 2 1) (ant "^[ 	]*\\(?:\\[[^] \n]+\\][ 	]*\\)\\{1,2\\}\\(\\(?:[A-Za-z]:\\)?[^: \n]+\\):\\([0-9]+\\):\\(?:\\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\):\\)?\\( warning\\)?" 1 (2 . 4) (3 . 5) (6)) (bash "^\\([^: \n	]+\\): line \\([0-9]+\\):" 1 2) (borland "^\\(?:Error\\|Warnin\\(g\\)\\) \\(?:[FEW][0-9]+ \\)?\\([a-zA-Z]?:?[^:( 	\n]+\\) \\([0-9]+\\)\\(?:[) 	]\\|:[^0-9\n]\\)" 2 3 nil (1)) (python-tracebacks-and-caml "^[ 	]*File \\(\"?\\)\\([^,\" \n	<>]+\\)\\1, lines? \\([0-9]+\\)-?\\([0-9]+\\)?\\(?:$\\|,\\(?: characters? \\([0-9]+\\)-?\\([0-9]+\\)?:\\)?\\([ \n]Warning\\(?: [0-9]+\\)?:\\)?\\)" 2 (3 . 4) (5 . 6) (7)) (cmake "^CMake \\(?:Error\\|\\(Warning\\)\\) at \\(.*\\):\\([1-9][0-9]*\\) ([^)]+):$" 2 3 nil (1)) (cmake-info "^  \\(?: \\*\\)?\\(.*\\):\\([1-9][0-9]*\\) ([^)]+)$" 1 2 nil 0) (comma "^\"\\([^,\" \n	]+\\)\", line \\([0-9]+\\)\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4)) (cucumber "\\(?:^cucumber\\(?: -p [^[:space:]]+\\)?\\|#\\)\\(?: \\)\\([^(].*\\):\\([1-9][0-9]*\\)" 1 2) (msft "^ *\\([0-9]+>\\)?\\(\\(?:[a-zA-Z]:\\)?[^ :(	\n][^:(	\n]*\\)(\\([0-9]+\\)) ?: \\(?:see declaration\\|\\(?:warnin\\(g\\)\\|[a-z ]+\\) C[0-9]+:\\)" 2 3 nil (4)) (edg-1 "^\\([^ \n]+\\)(\\([0-9]+\\)): \\(?:error\\|warnin\\(g\\)\\|remar\\(k\\)\\)" 1 2 nil (3 . 4)) (edg-2 "at line \\([0-9]+\\) of \"\\([^ \n]+\\)\"$" 2 1 nil 0) (epc "^Error [0-9]+ at (\\([0-9]+\\):\\([^)\n]+\\))" 2 1) (ftnchek "\\(^Warning .*\\)? line[ \n]\\([0-9]+\\)[ \n]\\(?:col \\([0-9]+\\)[ \n]\\)?file \\([^ :;\n]+\\)" 4 2 3 (1)) gradle-kotlin "^\\(?:\\(w\\)\\|.\\): *\\(\\(?:[A-Za-z]:\\)?[^:\n]+\\): *(\\([0-9]+\\), *\\([0-9]+\\))" (2 3 4 (1)) (iar "^\"\\(.*\\)\",\\([0-9]+\\)\\s-+\\(?:Error\\|Warnin\\(g\\)\\)\\[[0-9]+\\]:" 1 2 nil (3)) (ibm "^\\([^( \n	]+\\)(\\([0-9]+\\):\\([0-9]+\\)) : \\(?:warnin\\(g\\)\\|informationa\\(l\\)\\)?" 1 2 3 (4 . 5)) (irix "^[-[:alnum:]_/ ]+: \\(?:\\(?:[sS]evere\\|[eE]rror\\|[wW]arnin\\(g\\)\\|[iI]nf\\(o\\)\\)[0-9 ]*: \\)?\\([^,\" \n	]+\\)\\(?:, line\\|:\\) \\([0-9]+\\):" 3 4 nil (1 . 2)) (java "^\\(?:[ 	]+at \\|==[0-9]+== +\\(?:at\\|b\\(y\\)\\)\\).+(\\([^()\n]+\\):\\([0-9]+\\))$" 2 3 nil (1)) (jikes-file "^\\(?:Found\\|Issued\\) .* compiling \"\\(.+\\)\":$" 1 nil nil 0) maven "^\\(?:\\[\\(?:ERROR\\|\\(?1:WARNING\\)\\|\\(?2:INFO\\)\\)] \\)?\\(?3:[^\n []\\(?:[^\n :]\\| [^\n/-]\\|:[^\n []\\)*\\):\\[\\(?4:[[:digit:]]+\\),\\(?5:[[:digit:]]+\\)] " (3 4 5 (1 . 2)) (jikes-line "^ *\\([0-9]+\\)\\.[ 	]+.*\n +\\(<-*>\n\\*\\*\\* \\(?:Error\\|Warnin\\(g\\)\\)\\)" nil 1 nil 2 0 (2 (compilation-face '(3)))) clang-include "^In file included from \\([^\n:]+\\):\\([0-9]+\\):$" (1 2 nil 0) (gcc-include "^\\(?:In file included \\|                 \\|	\\)from \\([0-9]*[^0-9\n]\\(?:[^\n :]\\| [^-/\n]\\|:[^ \n]\\)*?\\):\\([0-9]+\\)\\(?::\\([0-9]+\\)\\)?\\(?:\\(:\\)\\|\\(,\\|$\\)\\)?" 1 2 3 (4 . 5)) (ruby-Test::Unit "^    [[ ]?\\([^ (].*\\):\\([1-9][0-9]*\\)\\(\\]\\)?:in " 1 2) (gmake ": \\*\\*\\* \\[\\(\\(.+?\\):\\([0-9]+\\): .+\\)\\]" 2 3 nil 0 1) gnu "^\\(?:[[:alpha:]][-[:alnum:].]+: ?\\|[ 	]+\\(?:in \\|from\\)\\)?\\(?1:\\(?:[0-9]*[^0-9\n]\\)\\(?:[^\n :]\\| [^-/\n]\\|:[^ \n]\\)*?\\)\\(?:: ?\\)\\(?2:[0-9]+\\)\\(?:-\\(?4:[0-9]+\\)\\(?:\\.\\(?5:[0-9]+\\)\\)?\\|[.:]\\(?3:[0-9]+\\)\\(?:-\\(?:\\(?4:[0-9]+\\)\\.\\)?\\(?5:[0-9]+\\)\\)?\\)?:\\(?: *\\(?6:\\(?:FutureWarning\\|RuntimeWarning\\|W\\(?::\\|arning\\)\\|warning\\)\\)\\| *\\(?7:[Ii]nfo\\(?:\\>\\|rmationa?l?\\)\\|I:\\|\\[ skipping .+ ]\\|instantiated from\\|required from\\|[Nn]ote\\)\\| *\\(?:[Ee]rror\\)\\|\\(?:[0-9]?\\)\\(?:[^0-9\n]\\|$\\)\\|[0-9][0-9][0-9]\\)" (1 (2 . 4) (3 . 5) (6 . 7)) ((lcc "^\\(?:E\\|\\(W\\)\\), \\([^(\n]+\\)(\\([0-9]+\\),[ 	]*\\([0-9]+\\)" 2 3 4 (1)) (makepp "^makepp\\(?:\\(?:: warning\\(:\\).*?\\|\\(: Scanning\\|: [LR]e?l?oading makefile\\|: Imported\\|log:.*?\\) \\|: .*?\\)`\\(\\(\\S +?\\)\\(?::\\([0-9]+\\)\\)?\\)['(]\\)" 4 5 nil (1 . 2) 3 (0 (progn (save-match-data (compilation-parse-errors (match-end 0) (line-end-position) `("`\\(\\(\\S +?\\)\\(?::\\([0-9]+\\)\\)?\\)['(]" 2 3 nil ,(cond ((match-end 1) 1) ((match-end 2) 0) (t 2)) 1))) (end-of-line) nil))) (mips-1 " (\\([0-9]+\\)) in \\([^ \n]+\\)" 2 1) (mips-2 " in \\([^()\n ]+\\)(\\([0-9]+\\))$" 1 2) (omake "^\\*\\*\\* omake: file \\(.*\\) changed" 1 nil nil nil nil (0 (progn (compilation--flush-file-structure (match-string 1)) nil))) (oracle "^\\(?:Semantic error\\|Error\\|PCC-[0-9]+:\\).* line \\([0-9]+\\)\\(?:\\(?:,\\| at\\)? column \\([0-9]+\\)\\)?\\(?:,\\| in\\| of\\)? file \\(.*?\\):?$" 3 1 2) (perl " at \\([^ \n]+\\) line \\([0-9]+\\)\\(?:[,.]\\|$\\| during global destruction\\.$\\)" 1 2) (php "\\(?:Parse\\|Fatal\\) error: \\(.*\\) in \\(.*\\) on line \\([0-9]+\\)" 2 3 nil nil) (rxp "^\\(?:Error\\|Warnin\\(g\\)\\):.*\n.* line \\([0-9]+\\) char \\([0-9]+\\) of file://\\(.+\\)" 4 2 3 (1)) (sparc-pascal-file "^\\w\\w\\w \\w\\w\\w +[0-3]?[0-9] +[0-2][0-9]:[0-5][0-9]:[0-5][0-9] [12][09][0-9][0-9] +\\(.*\\):$" 1 nil nil 0) (sparc-pascal-line "^\\(\\(?:E\\|\\(w\\)\\) +[0-9]+\\) line \\([0-9]+\\) -  " nil 3 nil (2) nil (1 (compilation-face '(2)))) (sparc-pascal-example "^ +\\([0-9]+\\) +.*\n\\(\\(?:e\\|\\(w\\)\\) [0-9]+\\)-+" nil 1 nil (3) nil (2 (compilation-face '(3)))) (sun ": \\(?:ERROR\\|WARNIN\\(G\\)\\|REMAR\\(K\\)\\) \\(?:[[:alnum:] ]+, \\)?File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?" 3 4 5 (1 . 2)) (sun-ada "^\\([^, \n	]+\\), line \\([0-9]+\\), char \\([0-9]+\\)[:., (-]" 1 2 3) (watcom "^[ 	]*\\(\\(?:[a-zA-Z]:\\)?[^ :(	\n][^:(	\n]*\\)(\\([0-9]+\\)): ?\\(?:\\(Error! E[0-9]+\\)\\|\\(Warning! W[0-9]+\\)\\):" 1 2 nil (4)) (4bsd "\\(?:^\\|::  \\|\\S ( \\)\\(/[^ \n	()]+\\)(\\([0-9]+\\))\\(?:: \\(warning:\\)?\\|$\\| ),\\)" 1 2 nil (3)) (gcov-file "^ *-: *\\(0\\):Source:\\(.+\\)$" 2 1 nil 0 nil) (gcov-header "^ *-: *\\(0\\):\\(?:Object\\|Graph\\|Data\\|Runs\\|Programs\\):.+$" nil 1 nil 0 nil) (gcov-nomark "^ *-: *\\([1-9]\\|[0-9]\\{2,\\}\\):.*$" nil 1 nil 0 nil (0 'default) (1 compilation-line-face)) (gcov-called-line "^ *\\([0-9]+\\): *\\([0-9]+\\):.*$" nil 2 nil 0 nil (0 'default) (1 compilation-info-face) (2 compilation-line-face)) (gcov-never-called "^ *\\(#####\\): *\\([0-9]+\\):.*$" nil 2 nil 2 nil (0 'default) (1 compilation-error-face) (2 compilation-line-face)) (perl--Pod::Checker "^\\*\\*\\* \\(?:ERROR\\|\\(WARNING\\)\\).* \\(?:at\\|on\\) line \\([0-9]+\\) \\(?:.* \\)?in file \\([^ 	\n]+\\)" 3 2 nil (1)) (perl--Test "^# Failed test [0-9]+ in \\([^ 	
\n]+\\) at line \\([0-9]+\\)" 1 2) (perl--Test2 "^\\(.*NOK.*\\)?# Test [0-9]+ got:.* (\\([^ 	
\n]+\\) at line \\([0-9]+\\)\\( fail #[0-9]+\\)?)" 2 3) (perl--Test::Harness "^.*NOK.* \\([^ 	
\n]+\\) at line \\([0-9]+\\)" 1 2) (weblint "^\\([^ 	
\n(]+\\) (\\([0-9]+\\):\\([0-9]+\\)) " 1 2 3) (guile-file "^In \\(.+\\..+\\):\n" 1 nil nil 0) (guile-line "^ *\\([0-9]+\\): *\\([0-9]+\\)" nil 1 2))] 31) (#$ . 5369))
(byte-code "\301\302\303\304\305DD\306\307\310\311\312\313\314\315\316\"F&\207" [data-directory custom-declare-variable compilation-error-regexp-alist funcall function #[0 "\301\302\"\207" [compilation-error-regexp-alist-alist mapcar car] 3] "Alist that specifies how to match errors in compiler output.\nOn GNU and Unix, any string is a valid filename, so these\nmatchers must make some common sense assumptions, which catch\nnormal cases.  A shorter list will be lighter on resource usage.\n\nInstead of an alist element, you can use a symbol, which is\nlooked up in `compilation-error-regexp-alist-alist'.  You can see\nthe predefined symbols and their effects in the file\n`etc/compilation.txt' (linked below if you are customizing this).\n\nEach elt has the form (REGEXP FILE [LINE COLUMN TYPE HYPERLINK\nHIGHLIGHT...]).  If REGEXP matches, the FILE'th subexpression\ngives the file name, and the LINE'th subexpression gives the line\nnumber.  The COLUMN'th subexpression gives the column number on\nthat line.\n\nIf FILE, LINE or COLUMN are nil or that index didn't match, that\ninformation is not present on the matched line.  In that case the\nfile name is assumed to be the same as the previous one in the\nbuffer, line number defaults to 1 and column defaults to\nbeginning of line's indentation.\n\nFILE can also have the form (FILE FORMAT...), where the FORMATs\n(e.g. \"%s.c\") will be applied in turn to the recognized file\nname, until a file of that name is found.  Or FILE can also be a\nfunction that returns (FILENAME) or (RELATIVE-FILENAME . DIRNAME).\nIn the former case, FILENAME may be relative or absolute, or it may\nbe a buffer.\n\nLINE can also be of the form (LINE . END-LINE) meaning a range\nof lines.  COLUMN can also be of the form (COLUMN . END-COLUMN)\nmeaning a range of columns starting on LINE and ending on\nEND-LINE, if that matched.\n\nLINE, END-LINE, COL, and END-COL can also be functions of no argument\nthat return the corresponding line or column number.  They can assume REGEXP\nhas just been matched, and should correspondingly preserve this match data.\n\nTYPE is 2 or nil for a real error or 1 for warning or 0 for info.\nTYPE can also be of the form (WARNING . INFO).  In that case this\nwill be equivalent to 1 if the WARNING'th subexpression matched\nor else equivalent to 0 if the INFO'th subexpression matched.\nSee `compilation-error-face', `compilation-warning-face',\n`compilation-info-face' and `compilation-skip-threshold'.\n\nWhat matched the HYPERLINK'th subexpression has `mouse-face' and\n`compilation-message-face' applied.  If this is nil, the text\nmatched by the whole REGEXP becomes the hyperlink.\n\nAdditional HIGHLIGHTs take the shape (SUBMATCH FACE), where\nSUBMATCH is the number of a submatch and FACE is an expression\nwhich evaluates to a face name (a symbol or string).\nAlternatively, FACE can evaluate to a property list of the\nform (face FACE PROP1 VAL1 PROP2 VAL2 ...), in which case all the\nlisted text properties PROP# are given values VAL# as well.\n\nAfter identifying errors and warnings determined by this\nvariable, the `compilation-transform-file-match-alist' variable\nis then consulted.  It allows further transformations of the\nmatched file names, and weeding out false positives." :type (repeat (choice (symbol :tag "Predefined symbol") (sexp :tag "Error specification"))) :link file-link :tag "example file" expand-file-name "compilation.txt"] 13)
#@49 Directory to restore to when doing `recompile'.
(defvar compilation-directory nil (#$ . 16222))
#@727 A list for tracking when directories are entered or left.
If nil, do not track directories, e.g. if all file names are absolute.  The
first element is the REGEXP matching these messages.  It can match any number
of variants, e.g. different languages.  The remaining elements are all of the
form (DIR .  LEAVE).  If for any one of these the DIR'th subexpression
matches, that is a directory name.  If LEAVE is nil or the corresponding
LEAVE'th subexpression doesn't match, this message is about going into another
directory.  If it does match anything, this message is about going back to the
directory we were in before the last entering message.  If you change this,
you may also want to change `compilation-page-delimiter'.
(defvar compilation-directory-matcher '("\\(?:Entering\\|Leavin\\(g\\)\\) directory [`']\\(.+\\)'$" (2 . 1)) (#$ . 16325))
#@48 Value of `page-delimiter' in Compilation mode.
(defvar compilation-page-delimiter "^\\(?:\f\\|.*\\(?:Entering\\|Leaving\\) directory [`'].+'\n\\)+" (#$ . 17180))
#@111 Additional things to highlight in Compilation mode.
This gets tacked on the end of the generated expressions.
(defvar compilation-mode-font-lock-keywords '(("^[Cc]hecking \\(?:[Ff]or \\|[Ii]f \\|[Ww]hether \\(?:to \\)?\\)?\\(.+\\)\\.\\.\\. *\\(?:(cached) *\\)?\\(\\(yes\\(?: .+\\)?\\)\\|no\\|\\(.*\\)\\)$" (1 font-lock-variable-name-face) (2 (compilation-face '(4 . 3)))) ("^\\([[:alnum:]_/.+-]+\\)\\(\\[\\([0-9]+\\)\\]\\)?[ 	]*:" (1 font-lock-function-name-face) (3 compilation-line-face nil t)) (" --?o\\(?:utfile\\|utput\\)?[= ]\\(\\S +\\)" . 1) ("^Compilation \\(finished\\).*" (0 '(face nil compilation-message nil help-echo nil mouse-face nil) t) (1 compilation-info-face)) ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\|segmentation fault\\)\\(?:.*with code \\([0-9]+\\)\\)?.*" (0 '(face nil compilation-message nil help-echo nil mouse-face nil) t) (1 compilation-error-face) (2 compilation-error-face nil t))) (#$ . 17349))
#@137 Regexp matching part of visited source lines to highlight temporarily.
Highlight entire line if t; don't highlight source lines if nil.
(defvar compilation-highlight-regexp t (#$ . 18313))
#@60 Overlay used to temporarily highlight compilation matches.
(defvar compilation-highlight-overlay nil (#$ . 18508))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\307%\210\300\315\302\303\316DD\317\306\307%\210\300\320\302\303\321DD\322\306\323\310\324&\210\300\325\302\303\326DD\327\306\330%\210\300\331\302\303\332DD\333\306\334%\210\300\335\302\303\336DD\337\306\307\310\340&\207" [custom-declare-variable compilation-error-screen-columns funcall function #[0 "\300\207" [t] 1] "If non-nil, column numbers in error messages are screen columns.\nOtherwise they are interpreted as character positions, with\neach character occupying one column.\nThe default is to use screen columns, which requires that the compilation\nprogram and Emacs agree about the display width of the characters,\nespecially the TAB character.\nIf this is buffer-local in the destination buffer, Emacs obeys\nthat value, otherwise it uses the value in the *compilation*\nbuffer.  This enables a major-mode to specify its own value." :type boolean :version "20.4" compilation-read-command #[0 "\300\207" [t] 1] "Non-nil means \\[compile] reads the compilation command to use.\nOtherwise, \\[compile] just uses the value of `compile-command'.\n\nNote that changing this to nil may be a security risk, because a\nfile might define a malicious `compile-command' as a file local\nvariable, and you might not notice.  Therefore, `compile-command'\nis considered unsafe if this variable is nil." compilation-ask-about-save #[0 "\300\207" [t] 1] "Non-nil means \\[compile] asks which buffers to save before compiling.\nOtherwise, it saves all modified buffers without asking." compilation-save-buffers-predicate #[0 "\300\207" [nil] 1] "The second argument (PRED) passed to `save-some-buffers' before compiling.\nE.g., one can set this to\n  (lambda ()\n    (string-prefix-p my-compilation-root (file-truename (buffer-file-name))))\nto limit saving to files located under `my-compilation-root'.\nNote, that, in general, `compilation-directory' cannot be used instead\nof `my-compilation-root' here." (choice (const :tag "Default (save all file-visiting buffers)" nil) (const :tag "Save all buffers" t) function) "24.1" compilation-search-path #[0 "\300\207" [(nil)] 1] "List of directories to search for source files named in error messages.\nElements should be directory names, not file names of directories.\nThe value nil as an element means to try the default directory." (repeat (choice (const :tag "Default" nil) (string :tag "Directory"))) compile-command #[0 "\300\301!\207" [purecopy "make -k "] 2] "Last shell command used to do a compilation; default for next compilation.\n\nSometimes it is useful for files to supply local values for this variable.\nYou might also use mode hooks to specify it in certain modes, like this:\n\n    (add-hook \\='c-mode-hook\n       (lambda ()\n	 (unless (or (file-exists-p \"makefile\")\n		     (file-exists-p \"Makefile\"))\n	   (set (make-local-variable \\='compile-command)\n		(concat \"make -k \"\n			(if buffer-file-name\n			  (shell-quote-argument\n			    (file-name-sans-extension buffer-file-name))))))))\n\nIt's often useful to leave a space at the end of the value." string compilation-disable-input #[0 "\300\207" [nil] 1] "If non-nil, send end-of-file as compilation process input.\nThis only affects platforms that support asynchronous processes (see\n`start-process'); synchronous compilation processes never accept input." "22.1"] 8)
(defvar compilation-locs nil)
#@198 Set this to t before creating a *compilation* buffer.
Then every error line will have a debug text property with the matcher that
fit this line and the match data.  Use `describe-text-properties'.
(defvar compilation-debug nil (#$ . 22052))
#@294 If non-nil, called when a compilation process dies to return a status message.
This should be a function of three arguments: process status, exit status,
and exit message; it returns a cons (MESSAGE . MODELINE) of the strings to
write into the compilation buffer, and to put in its mode line.
(defvar compilation-exit-message-function #[771 "\211B\207" [] 5 "\n\n(fn PROCESS-STATUS EXIT-STATUS MSG)"] (#$ . 22300))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313&	\207" [custom-declare-variable compilation-environment funcall function #[0 "\300\207" [nil] 1] "List of environment variables for compilation to inherit.\nEach element should be a string of the form ENVVARNAME=VALUE.\nThis list is temporarily prepended to `process-environment' prior to\nstarting the compilation process." :type (repeat (string :tag "ENVVARNAME=VALUE")) :options (("LANG=C")) :version "24.1"] 10)
(defvar compile-history nil)
(byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\210\300\311\312\313\304\305%\210\300\314\315\316\304\317%\210\300\320\321\322\304\317%\210\300\323\324\325\304\317%\210\300\326\327\330\304\305%\210\300\331\332\333\304\305%\210\334\335\336\337\340DD\341\342\343\304\305&\207" [custom-declare-face compilation-error ((t :inherit error)) "Face used to highlight compiler errors." :version "22.1" compilation-warning ((t :inherit warning)) "Face used to highlight compiler warnings." compilation-info ((t :inherit success)) "Face used to highlight compiler information." compilation-mode-line-fail ((default :inherit compilation-error) (((class color) (min-colors 16)) (:foreground "Red1" :weight bold)) (((class color) (min-colors 8)) (:foreground "red")) (t (:inverse-video t :weight bold))) "Face for Compilation mode's \"error\" mode line indicator." "24.3" compilation-mode-line-run ((t :inherit compilation-warning)) "Face for Compilation mode's \"running\" mode line indicator." compilation-mode-line-exit ((default :inherit compilation-info) (((class color) (min-colors 16)) (:foreground "ForestGreen" :weight bold)) (((class color)) (:foreground "green" :weight bold)) (t (:weight bold))) "Face for Compilation mode's \"exit\" mode line indicator." compilation-line-number ((t :inherit font-lock-keyword-face)) "Face for displaying line numbers in compiler messages." compilation-column-number ((t :inherit font-lock-doc-face)) "Face for displaying column numbers in compiler messages." custom-declare-variable compilation-message-face funcall function #[0 "\300\207" [underline] 1] "Face name to use for whole messages.\nFaces `compilation-error-face', `compilation-warning-face',\n`compilation-info-face', `compilation-line-face' and\n`compilation-column-face' get prepended to this, when applicable." :type face] 8)
#@51 Face name to use for file name in error messages.
(defvar compilation-error-face 'compilation-error (#$ . 25073))
#@53 Face name to use for file name in warning messages.
(defvar compilation-warning-face 'compilation-warning (#$ . 25193))
#@59 Face name to use for file name in informational messages.
(defvar compilation-info-face 'compilation-info (#$ . 25319))
#@57 Face name to use for line numbers in compiler messages.
(defvar compilation-line-face 'compilation-line-number (#$ . 25445))
#@59 Face name to use for column numbers in compiler messages.
(defvar compilation-column-face 'compilation-column-number (#$ . 25576))
#@51 Face name to use for entering directory messages.
(defvar compilation-enter-directory-face 'font-lock-function-name-face (#$ . 25713))
#@50 Face name to use for leaving directory messages.
(defvar compilation-leave-directory-face 'font-lock-builtin-face (#$ . 25854))
(defvar compilation-parse-errors-function nil)
(byte-code "\300\301\302\303#\210\304\305\306\307\310DD\311\312\313\314\315&\207" [make-obsolete-variable compilation-parse-errors-function compilation-error-regexp-alist "24.1" custom-declare-variable compilation-auto-jump-to-first-error funcall function #[0 "\300\207" [nil] 1] "If non-nil, automatically jump to the first error during compilation." :type boolean :version "23.1"] 8)
#@63 If non-nil, automatically jump to the next error encountered.
(defvar compilation-auto-jump-to-next nil (#$ . 26422))
(make-variable-buffer-local 'compilation-auto-jump-to-next)
#@72 If non-nil, skip multiple error messages for the same source location.
(defvar compilation-skip-to-next-location t (#$ . 26606))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-skip-threshold funcall function #[0 "\300\207" [1] 1] "Compilation motion commands skip less important messages.\nThe value can be either 2 -- skip anything less than error, 1 --\nskip anything less than warning or 0 -- don't skip any messages.\nNote that all messages not positively identified as warning or\ninfo, are considered errors." :type (choice (const :tag "Skip warnings and info" 2) (const :tag "Skip info" 1) (const :tag "No skip" 0)) :version "22.1"] 8)
#@60 Switch the `compilation-skip-threshold' level.

(fn LEVEL)
(defalias 'compilation-set-skip-threshold #[257 "\211\301\302\303\267\202\304\202\305\202\306\202\307\"\207" [compilation-skip-threshold message "Skipping %s" #s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (0 10 1 14 2 18)) "Nothing" "Info messages" "Warnings and info" nil] 5 (#$ . 27307) (byte-code "\302\203\303!\202
	T\304\"C\207" [current-prefix-arg compilation-skip-threshold mod prefix-numeric-value 3] 3)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-skip-visited funcall function #[0 "\300\207" [nil] 1] "Compilation motion commands skip visited messages if this is t.\nVisited messages are ones for which the file, line and column have been jumped\nto from the current content in the current compilation buffer, even if it was\nfrom a different message." :type boolean :version "22.1"] 8)
#@13 

(fn TYPE)
(defalias 'compilation-type #[257 "\211@\203
\211@\225\203
\300\207\211A\203\211A\225\203\301\207\302\207" [1 0 2] 2 (#$ . 28280)])
#@13 

(fn TYPE)
(defalias 'compilation-face #[257 "\303!\211\304\267\202\202	\202\n\202\305\207" [compilation-warning-face compilation-info-face compilation-error-face compilation-type #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (1 9 0 13 2 17)) nil] 4 (#$ . 28436)])
#@32 

(fn LINE FILE-STRUCT MARKER)
(defalias 'compilation--make-cdrloc '(macro . #[771 "\300\301BBBB\207" [list (nil)] 8 (#$ . 28757)]))
#@12 

(fn LOC)
(defalias 'compilation--loc->col '(macro . #[257 "\300D\207" [car] 3 (#$ . 28899)]))
#@12 

(fn LOC)
(defalias 'compilation--loc->line '(macro . #[257 "\300D\207" [cadr] 3 (#$ . 29002)]))
#@12 

(fn LOC)
(defalias 'compilation--loc->file-struct '(macro . #[257 "\300\301E\207" [nth 2] 4 (#$ . 29107)]))
#@12 

(fn LOC)
(defalias 'compilation--loc->marker '(macro . #[257 "\300\301E\207" [nth 3] 4 (#$ . 29224)]))
#@12 

(fn LOC)
(defalias 'compilation--loc->visited '(macro . #[257 "\300\301E\207" [nthcdr 5] 4 (#$ . 29336)]))
#@45 

(fn FILE-SPEC FORMATS &optional LOC-TREE)
(defalias 'compilation--make-file-struct '(macro . #[770 "\300\300EE\207" [cons] 8 (#$ . 29452)]))
#@11 

(fn FS)
(defalias 'compilation--file-struct->file-spec '(macro . #[257 "\300D\207" [car] 3 (#$ . 29604)]))
#@11 

(fn FS)
(defalias 'compilation--file-struct->formats '(macro . #[257 "\300D\207" [cadr] 3 (#$ . 29720)]))
#@11 

(fn FS)
(defalias 'compilation--file-struct->loc-tree '(macro . #[257 "\300D\207" [cdr] 3 (#$ . 29835)]))
#@79 compiler-macro for inlining `compilation--message-p'.

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

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

(fn CL-WHOLE-ARG CL-X)
(defalias 'compilation--message->loc--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->loc (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 1))) nil] 9 (#$ . 30660)])
(put 'compilation--message->loc 'compiler-macro 'compilation--message->loc--cmacro)
#@69 Access slot "loc" of `compilation--message' struct CL-X.

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

(fn CL-WHOLE-ARG CL-X)
(defalias 'compilation--message->type--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->type (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 2))) nil] 9 (#$ . 31507)])
(put 'compilation--message->type 'compiler-macro 'compilation--message->type--cmacro)
#@70 Access slot "type" of `compilation--message' struct CL-X.

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

(fn CL-WHOLE-ARG CL-X)
(defalias 'compilation--message->end-loc--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->end-loc (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 3))) nil] 9 (#$ . 32362)])
(put 'compilation--message->end-loc 'compiler-macro 'compilation--message->end-loc--cmacro)
#@73 Access slot "end-loc" of `compilation--message' struct CL-X.

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

(fn CL-WHOLE-ARG LOC TYPE END-LOC)
(defalias 'compilation--make-message--cmacro #[1028 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (loc type end-loc) (cl-block compilation--make-message (record 'compilation--message loc type end-loc)) nil] 13 (#$ . 33241)])
(put 'compilation--make-message 'compiler-macro 'compilation--make-message--cmacro)
#@80 Constructor for objects of type `compilation--message'.

(fn LOC TYPE END-LOC)
(defalias 'compilation--make-message #[771 "\300\301$\207" [record compilation--message] 8 (#$ . 33663)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put compilation--make-message side-effect-free t cl-struct-define compilation--message nil cl-structure-object record ((cl-tag-slot) (loc) (type) (end-loc)) cl-struct-compilation--message-tags] 11)
#@260 A pair (POS . RES) caching the result of previous directory search.
Basically, this pair says that calling
   (previous-single-property-change POS \='compilation-directory)
returned RES, i.e. there is no change of `compilation-directory' between
POS and RES.
(defvar compilation--previous-directory-cache nil (#$ . 34143))
(make-variable-buffer-local 'compilation--previous-directory-cache)
#@18 

(fn START END)
(defalias 'compilation--flush-directory-cache #[514 "?\206(@X\206(A\203\301A!\203AX\203%@\302\223\207\302\211\207" [compilation--previous-directory-cache marker-buffer nil] 5 (#$ . 34540)])
#@92 Like (previous-single-property-change POS \='compilation-directory), but faster.

(fn POS)
(defalias 'compilation--previous-directory #[257 "\203\211@W\203A\203AW\203A\207\205'@X\205'@\301\302\303$\204A\304!\205;\304!B\211\202b\211\203V\211U\203V@\303\223\210A\202b\303\223\210\304!\241\210\211\305!\203n\306!\202o\211\207" [compilation--previous-directory-cache previous-single-property-change compilation-directory nil copy-marker markerp marker-position] 7 (#$ . 34770)])
#@18 

(fn IDX LEAVE)
(defalias 'compilation-directory-properties #[514 "\211\203\211\225\262\302\303\224!\211\205\304S\305\"\206\304\305\"\262\306\203'\202(	\305\2036A\206<\307\202<\310!B\311\312\313\314\303\314$\315BBBBBB\207" [compilation-leave-directory-face compilation-enter-directory-face compilation--previous-directory 0 get-text-property compilation-directory font-lock-face (nil) match-string-no-properties compilation-message record compilation--message nil (mouse-face highlight keymap compilation-button-map help-echo "mouse-2: visit destination directory")] 13 (#$ . 35296)])
#@19 

(fn BUFFER POS)
(defalias 'compilation-auto-jump #[514 "rq\210\211b\210\301\302\"\211\203\303\"\210\210\205\304 )\207" [compilation-auto-jump-to-first-error get-buffer-window 0 set-window-point compile-goto-error] 6 (#$ . 35910)])
#@48 

(fn FILE LINE END-LINE COL END-COL TYPE FMT)
(defalias 'compilation-error-properties #[1799 "\304\305\224`\306\307$?\205\353\203Q\310!\203 \202!\311!\211\262;\203\226\312!?\205F\313\305\224!\211\205D\314S\315\"\206D\314\315\"\262@B\262\210\202\226\316`\306\"\211\203\215\314S\306\"\206e\314\306\"\211\205}\317\320!>\204y\321\322\323D\"\210\324H8\211\203\213\211@@@A@B\262\n\266\204\225\325\262\210\310!\203\242 \202\264\205\264\311!\211\262\205\264\326!\262\310!\203\301 \202\321\205\321\311!\211\262\205\321\326!\262\310!\203\336 \202\356\205\356\311!\211\262\205\356\326!\262\310!\203\373 \202\f\203\311!\211\262\203\326!T\206\205\327\262:\203<@\203*@\225\203*\324\202:A\2039A\225\2039\305\202:\317\262\330 \331\305\332\333\334!\335\"\336$\216:\205m\337@!?\205mA\203j\340@	A\"\202m@	\307\211\211\341\307:\203\272@\262\211A\262\242\262@\262\342\"\203\257\203\242\343\307\211\n$C\211\262\202\246\307\211\262\262\307\211\262\202\260\341\203\272A\262\202s\266)\210\205\353\n\203\332Y\203\332\344\302!\210\345\305\307\346p\305\224%\210\347&\207" [cl-struct-compilation--message-tags compilation-transform-file-match-alist compilation-auto-jump-to-next compilation-skip-threshold text-property-not-all 0 compilation-message nil functionp match-string-no-properties file-name-absolute-p compilation--previous-directory get-text-property compilation-directory previous-single-property-change 2 type-of signal wrong-type-argument compilation--message 1 ("*unknown*") string-to-number -1 match-data make-byte-code "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 bufferp expand-file-name t string-match replace-match kill-local-variable run-with-timer compilation-auto-jump compilation-internal-error-properties] 20 (#$ . 36158)])
#@99 Like `beginning-of-line', but accounts for lines hidden by `selective-display'.

(fn &optional N)
(defalias 'compilation-beginning-of-line #[256 "\301=\203\211\203\211\302U\203\303!\207\304\305\306\307S$\210\211\310W\205$\303 \207" [selective-display t 1 beginning-of-line re-search-forward "[\n
]" nil end 0] 6 (#$ . 38083)])
#@144 Go to column COL on the current line.
If SCREEN is non-nil, columns are screen columns, otherwise, they are
just char-counts.

(fn COL SCREEN)
(defalias 'compilation-move-to-column #[514 "Z\262\211\203\302\303\304]!)\207\305 \\\306 ^b\207" [compilation-first-column tab-width 8 move-to-column 0 line-beginning-position line-end-position] 5 (#$ . 38427)])
#@400 Get the meta-info that will be added as text-properties.
LINE, END-LINE, COL, END-COL are integers or nil.
TYPE can be 0, 1, or 2, meaning error, warning, or just info.
FILE should be (FILENAME) or (RELATIVE-FILENAME . DIRNAME) or (BUFFER) or
nil.
FMTS is a list of format specs for transforming the file name.
 (See `compilation-error-regexp-alist'.)

(fn FILE LINE END-LINE COL END-COL TYPE FMTS)
(defalias 'compilation-internal-error-properties #[1799 "\204\303\262\304\"\211AA@\211\205\305A@8	\306\211\211\203*\307!\2040\306\262\202
\2048\310\262\3112zAAA\211\205w\211@\211@V\203U\211\262	\202p@\206\\\310Z@ZV\203k\211\262	\312\311\313\"\210A\266\202\202A\2620\210\305A@8\262@\206\212\310\262r\307!q\210\314\300!\203\235\202\236\314\301!\203\250	\202\251\212\214~\210\315!b\210\204\313
\204\313\316\317\n\320#!\210\202\316\317\206\324\n\320#!\210\203\346\321W\203\354\306\210\202\362\322\f\"\210\323 \262
\203\316\317\320#!\210\f\203\322
\"\210\202\324\321!\210\323 \262+\210)A\211A\2043\211\203e\211@@?\202^\211\203T\211@@\203F@@W\202G\313\203T\211\262A\262\2023\211\203e@@=\203e\211\202lCB\241@\266\202\262\f\203A\211A\204\213\211\203\275\211@@?\202\266\211\203\254\211@@\203\236@@W\202\237\313\203\254\211\262A\262\202\213\211\203\275@@=\203\275\211\202\304CB\241@\266\202\211A\f\204\331\211\203\211@@?\202\211\203\372\211@@\203\354\f@@W\202\355\313\203\372\211\262A\262\202\331\211\203\f@@=\203\211\202
CB\241@\266\202\202l\n\205l\211A\f\2040\211\203b\211@@?\202[\211\203Q\211@@\203C\f@@W\202D\313\203Q\211\262A\262\2020\211\203b\f@@=\203b\211\202i
CB\241@\266\202\262\211A
\204\201\211\203\263\211@@?\202\254\211\203\242\211@@\203\224
@@W\202\225\313\203\242\211\262A\262\202\201\211\203\263
@@=\203\263\211\202\272CB\241@\266\202\262A\204\317	\306F\241\210\211\203\347\211A\204\347\211
\206\340	\306F\241\210\325\n\326\327\330$\331\203\375\332\202\203\333\202\334\335BBBBBB\207" [compilation-error-screen-columns compilation-first-column compilation-message-face ("*unknown*") compilation-get-file-structure 3 nil marker-buffer 1 marker throw t local-variable-p marker-position compilation-beginning-of-line - -1 0 compilation-move-to-column point-marker forward-to-indentation font-lock-face compilation-message record compilation--message help-echo "mouse-2: visit this file, line and column" "mouse-2: visit this file and line" "mouse-2: visit this file" (keymap compilation-button-map mouse-face highlight)] 23 (#$ . 38797)])
#@26 

(fn MATCHNUM PROP VAL)
(defalias 'compilation--put-prop #[771 "\250\205\224\205\300\224\225$\207" [put-text-property] 8 (#$ . 41519)])
#@28 

(fn &optional START END)
(defalias 'compilation--remove-properties #[512 "\303 \304\211\304\305\306\307\310\311!\312\"\313$\216\314\204e\262\204#d\262\315\"\210\316\317\314$\2063\262\320\317\"\203B\321\322#\210\211W\205N\211\262\202(\262,\207" [buffer-undo-list inhibit-read-only inhibit-modification-hooks buffer-modified-p t make-byte-code 0 "\300?\205\301\302!\207" vconcat vector [restore-buffer-modified-p nil] 2 nil compilation--flush-directory-cache next-single-property-change compilation-message get-text-property remove-list-of-text-properties (compilation-debug compilation-directory compilation-message font-lock-face help-echo mouse-face)] 10 (#$ . 41672)])
#@18 

(fn START END)
(defalias 'compilation--parse-region #[514 "\211b\210n\204$m\204\303\304!\210\305p!\211\205\306!\307>\262\203$\310 \262\311\"\210\2034b\210\312!\207b\210\313	@\314#\203y\315\316\224\316\225\"\210\n\203W\317\316\224\316\225\302\320\321	\"$\210	A\211\203u\211@\322@\224@\225\323@A\"#\210A\266\202\202Y\210\2027\324\"\207" [compilation-parse-errors-function compilation-directory-matcher compilation-debug cl--assertion-failed (eobp) get-buffer-process process-status (run open) line-beginning-position compilation--remove-properties compilation--compat-parse-errors re-search-forward t compilation--flush-directory-cache 0 font-lock-append-text-property vector directory add-text-properties compilation-directory-properties compilation-parse-errors] 10 (#$ . 42381)])
#@126 Note that a new message with severity TYPE was seen.
This updates the appropriate variable used by the mode-line.

(fn TYPE)
(defalias 'compilation--note-type #[257 "\211\303\267\202T\211\207	T\211\207\nT\211\207\304\207" [compilation-num-infos-found compilation-num-warnings-found compilation-num-errors-found #s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (0 6 1 11 2 16)) nil] 3 (#$ . 43200)])
#@186 Parse errors between START and END.
The errors recognized are the ones specified in RULES which default
to `compilation-error-regexp-alist' if RULES is nil.

(fn START END &rest RULES)
(defalias 'compilation-parse-errors #[642 "\211\206\211\205\234\211@\2119\203\211	\236A\262\211A@\3058\3068\3078@\310\211\211\211\311>\203?\312\313\"\204?\314\315\316\"P\262:\203OA\262@\262	:\203_A\262@\262:\203oA\262@\262\317\n8\203\206\317\n8\250\204\206\320\321\317\f8\"\210
b\210\322\323#\203\223\324		\n\206\244\305&\211\262\203\212\250\203\324:\203\300\325!\202\305\206\305\305\326!\210\327\n\330\331HJ#\266\327\330\n#\210\327\330\n#\210\327\330#\210\327\330#\210\332\n\233\211\203^\211@\211A\262\242\211\224\203V\333@!\211\203U\2119\204\211;\203!\334\224\225\330$\210\202U\211<\203P\211@\335=\203P\211A@9\204;\211A@;\203P\327\330A@#\210\336\224\225AA#\210\202U\320\337\"\210\210\210A\266\202\202\362\210\317\n8\206g\340\f\203z\341\340\224\340\225\304\342\343#$\210\336\224\225AA#\210\341\224\225\330A@$\266\202\212\266	A\266\202\202\207" [compilation-error-regexp-alist compilation-error-regexp-alist-alist compilation-line-face compilation-column-face compilation-debug 2 3 4 nil omake string-match "\\`\\([^^]\\|\\^\\( \\*\\|\\[\\)\\)" "^\\(?:      \\)?" substring 1 5 error "HYPERLINK should be an integer: %s" re-search-forward t compilation-error-properties compilation-type compilation--note-type compilation--put-prop font-lock-face [compilation-info-face compilation-warning-face compilation-error-face] 6 eval put-text-property face add-text-properties "Don't know how to handle face %S" 0 font-lock-append-text-property vector std] 23 (#$ . 43649)])
(defvar compilation--parsed -1)
(make-variable-buffer-local 'compilation--parsed)
#@61 Make sure the text has been parsed up to LIMIT.

(fn LIMIT)
(defalias 'compilation--ensure-parse #[257 "\212\211b\210\304\305!\262\306!\204\307 W\203Te]\310\223\210\211b\210\311y\210o\2048\312`S\313\"\2038\314y\210\202&\315 \316\211\316\317\311\320\321\322!\323\"\305$\216\324`\"\210,\266)\310\207" [compilation--parsed buffer-undo-list inhibit-read-only inhibit-modification-hooks line-beginning-position 2 markerp point-min-marker nil 0 get-text-property compilation-multiline -1 buffer-modified-p t make-byte-code "\300?\205\301\302!\207" vconcat vector [restore-buffer-modified-p nil] compilation--parse-region] 10 (#$ . 45526)])
#@71 Mark the region between START and END for re-parsing.

(fn START END)
(defalias 'compilation--flush-parse #[514 "\301!\205\f^\302\223\207" [compilation--parsed markerp nil] 5 (#$ . 46188)])
#@54 Return expressions to highlight in Compilation mode.
(defalias 'compilation-mode-font-lock-keywords #[0 "\301\302\"\207" [compilation-mode-font-lock-keywords append ((compilation--ensure-parse))] 3 (#$ . 46389)])
#@16 

(fn COMMAND)
(defalias 'compilation-read-command #[257 "\301\302@\232\203\303\202\300#\207" [compile-history read-shell-command "Compile command: " (compile-history . 1)] 6 (#$ . 46609)])
#@1212 Compile the program including the current buffer.  Default: run `make'.
Runs COMMAND, a shell command, in a separate process asynchronously
with output going to the buffer `*compilation*'.

You can then use the command \[next-error] to find the next error message
and move to the source code that caused it.

If optional second arg COMINT is t the buffer will be in Comint mode with
`compilation-shell-minor-mode'.

Interactively, prompts for the command if the variable
`compilation-read-command' is non-nil; otherwise uses `compile-command'.
With prefix arg, always prompts.
Additionally, with universal prefix arg, compilation buffer will be in
comint mode, i.e. interactive.

To run more than one compilation at once, start one then rename
the `*compilation*' buffer to some other name with
\[rename-buffer].  Then _switch buffers_ and start the new compilation.
It will create a new `*compilation*' buffer.

On most systems, termination of the main compilation process
kills its subprocesses.

The name used for the buffer is actually whatever is returned by
the function in `compilation-buffer-name-function', so you can set that
to a function that generates a unique name.

(fn COMMAND &optional COMINT)
(defalias 'compile #[513 "\304!\232\204\n\305	?\n\"\210\306\307\"\210\310\"\207" [compile-command compilation-ask-about-save compilation-save-buffers-predicate default-directory eval save-some-buffers set-default compilation-directory compilation-start] 5 (#$ . 46814) (byte-code "\303!	\204\n\203\301!\202\211\262\n:D\207" [compile-command compilation-read-command current-prefix-arg eval] 3)])
#@298 Re-compile the program including the current buffer.
If this is run in a Compilation mode buffer, re-use the arguments from the
original use.  Otherwise, recompile using `compile-command'.
If the optional argument `edit-command' is non-nil, the command can be edited.

(fn &optional EDIT-COMMAND)
(defalias 'recompile #[256 "\306?	\"\210\n\206\307\f!\203&\310
@\206!\262
\203&
\240\210\311\312
\206.C\")\207" [compilation-ask-about-save compilation-save-buffers-predicate compilation-directory default-directory compile-command compilation-arguments save-some-buffers eval compilation-read-command apply compilation-start] 6 (#$ . 48445) "P"])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-scroll-output funcall function #[0 "\300\207" [nil] 1] "Non-nil to scroll the *compilation* buffer window as output appears.\n\nSetting it causes the Compilation mode commands to put point at the\nend of their output window so that the end of the output is always\nvisible rather than the beginning.\n\nThe value `first-error' stops scrolling at the first error, and leaves\npoint on its location in the *compilation* buffer." :type (choice (const :tag "No scrolling" nil) (const :tag "Scroll compilation output" t) (const :tag "Stop scrolling at the first error" first-error)) :version "20.3"] 8)
#@420 Return the name of a compilation buffer to use.
If NAME-FUNCTION is non-nil, call it with one argument NAME-OF-MODE
to determine the buffer name.
Likewise if `compilation-buffer-name-function' is non-nil.
If current buffer has the NAME-OF-MODE major mode,
return the name of the current buffer, so that it gets reused.
Otherwise, construct a buffer name from NAME-OF-MODE.

(fn NAME-OF-MODE MODE-COMMAND NAME-FUNCTION)
(defalias 'compilation-buffer-name #[771 "\211\206	\206	\301!\207" [compilation-buffer-name-function compilation--default-buffer-name] 5 (#$ . 49809)])
#@21 

(fn NAME-OF-MODE)
(defalias 'compilation--default-buffer-name #[257 "\301!=\204\301\302P!=\203\303 \207\304\227\304Q\207" [major-mode intern-soft "-mode" buffer-name "*"] 5 (#$ . 50390)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-always-kill funcall function #[0 "\300\207" [nil] 1] "If t, always kill a running compilation process before starting a new one.\nIf nil, ask to kill it." :type boolean :version "24.3"] 8)
(defalias 'compilation--update-in-progress-mode-line #[0 "?\205\301\302!\207" [compilation-in-progress force-mode-line-update t] 2])
#@901 Run compilation command COMMAND (low level interface).
If COMMAND starts with a cd command, that becomes the `default-directory'.
The rest of the arguments are optional; for them, nil means use the default.

MODE is the major mode to set in the compilation buffer.  Mode
may also be t meaning use `compilation-shell-minor-mode' under `comint-mode'.

If NAME-FUNCTION is non-nil, call it with one argument (the mode name)
to determine the buffer name.  Otherwise, the default is to
reuses the current buffer if it has the proper major mode,
else use or create a buffer with name based on the major mode.

If HIGHLIGHT-REGEXP is non-nil, `next-error' will temporarily highlight
the matching section of the visited source line; the default is to use the
global value of `compilation-highlight-regexp'.

Returns the compilation buffer created.

(fn COMMAND &optional MODE NAME-FUNCTION HIGHLIGHT-REGEXP)
(defalias 'compilation-start #[1025 "\204\306\262\307=\203\310\202\311\312\313\314!#	\315\211r\316\317\n\n#!\211\262q\210\320p!\211\203o\321!\322=\203N\323!\315=\204N\324\325\326\"!\203i\3271a\330!\210\331\332!\210\333!0\202e\210\202o\210\202o\334\335\336 \"\210\210\307\337\340\341\"\204\203\202\327\332\225\204\214\342\202\327	\332\224H\343=\203\243\344\n\332\224T\332\225S#\202\327	\332\224H\345=\203\276\311\346\347\344
\332\224T\332\225S##\202\327\350\351\332\f\"!\352!\211G\332U\203\324\211@\202\325\266\202!\210\353 \210\307=\204\355\354 \210 \210\202\365\315\355 \210\356 \210\357\304!\210\357\301!\210\203\357\305!\210@\204A\360=\203\357\361!\210\3071\362\363\364\365!!\366\325\367B\344\370 \371\372##\373\261\210\262*\374\315!\210)\375\376\"\262r\211q\210\377	\201R \325\201SC\"C\201TD!$D\357\201E!\210FE\357\201F!\210\201UF\203\216A\204\216\201Ve\"\210A\203\227d\202\230e\211b\210\203\257\201W =\204\257\201X\"\210\210G\203\271G \210\203\303\201Y!\210\201Z\201[!\203\320\307=\203b\201\\!\203M\307\201] \315HI\201^\201\\!\205\201_\201`\201a\201\\\201b\"\201c\201\\\201d\"\201e\201\\\201f\"\257!\210\201g\371\201h\201i\201j!\201k\"\201l$\216\320\201mB\227J\315KD%!+\266\202\202l\320\201mB\227J\315KD%!\202l\201nB\227#\201oLM\203}\201p\315\"\210\201q\201r\"\210\307=\204\226\201s\201t\"\210\201u!d\223\210N\203\270\201v1\263\201w!0\202\267\210\202\270\210\201x\201y\"\210\201z \210\211OBO\210\202Z\201{\201|\n\"\210\201}L\201~ \210\331\371!\210\212db\210\307`P\201J\315\315\201\200&\201\201\201\202!\210\211\247\203+\201\203\201\204\211\371U\203 \201\205\202&\325\201\206\"#\210\202I\211;\203?\201\203\201\207\211\373P#\210\202I\201\203\201\210\211#\210*\210)\374\315!\210\201{\201\211\n\"\210)A\203edb\210)\211\211Q\207" [default-directory compilation-environment inhibit-read-only buffer-read-only compilation-directory compilation-highlight-regexp compilation-mode t "compilation" replace-regexp-in-string "-mode\\'" "" symbol-name nil get-buffer-create compilation-buffer-name get-buffer-process process-status run process-query-on-exit-flag yes-or-no-p format "A %s process is running; kill it? " (error) interrupt-process sit-for 1 delete-process error "Cannot have two processes in `%s' at once" buffer-name cd string-match "\\`\\s *cd\\(?:\\s +\\(\\S +?\\|'[^']*'\\|\"\\(?:[^\"`$\\]\\|\\\\.\\)*\"\\)\\)?\\s *[;&\n]" "~" 39 substring 34 "\\\\\\(.\\)" "\\1" substitute-env-vars match-string file-expand-wildcards erase-buffer buffer-disable-undo comint-mode compilation-shell-minor-mode make-local-variable first-error compilation-auto-jump-to-next "-*- mode: " "; default-directory: " prin1-to-string abbreviate-file-name " -*-\n" "%s started at %s\n\n" current-time-string 0 19 "\n" set-buffer-modified-p display-buffer (nil (allow-no-window . t)) append compilation-auto-jump-to-first-error compilation-scroll-output mode-name emacs-version process-environment compilation-arguments revert-buffer-function compilation-process-setup-function connection-local-variables-alist enable-connection-local-variables shell-file-name shell-command-switch mode-line-process compilation-always-kill compilation-disable-input compilation-in-progress compilation-filter-start next-error-last-buffer comint-term-environment "INSIDE_EMACS=%s,compile" copy-sequence compilation-revert-buffer set-window-start selected-window set-window-point compilation-set-window-height fboundp make-process file-remote-p buffer-local-variables hack-connection-local-variables-apply :application tramp :protocol method :user user :machine host make-byte-code "	\211\205'\211@\211@\300\236\211\203\302@!AL\210\202\303@!\210\210A\266\202\202\207" vconcat vector [connection-local-variables-alist make-local-variable kill-local-variable] 5 comint-exec start-file-process-shell-command ((:propertize ":%s" face compilation-mode-line-run) compilation-mode-line-errors) set-process-query-on-exit-flag set-process-sentinel compilation-sentinel set-process-filter compilation-filter process-mark (error) process-send-eof run-hook-with-args compilation-start-hook compilation--update-in-progress-mode-line message "Executing `%s'..." ((:propertize ":run" face compilation-mode-line-run) compilation-mode-line-errors) force-mode-line-update call-process "-c" run-hooks compilation-filter-hook compilation-handle-exit exit "finished\n" "exited abnormally with code %d\n" signal bizarre "Executing `%s'...done"] 22 (#$ . 51020)])
#@81 Set the height of WINDOW according to `compilation-window-height'.

(fn WINDOW)
(defalias 'compilation-set-window-height #[257 "\300\301\302!\"\211\2059\303!\2059\304\305!!=?\2059\212\306 r\307\310\311\312\313!\314\"\315$\216\316!\210\317\320 Z!*\262)\207" [buffer-local-value compilation-window-height window-buffer window-full-width-p frame-root-window window-frame internal--before-save-selected-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-save-selected-window] 2 select-window enlarge-window window-height] 9 (#$ . 56610)])
(defvar compilation-menu-map (byte-code "\300\301!\300\302!\303\304\305#\210\303\306\307#\210\303\310\311#\210\303\312\313B#\210\303\314\315#\210\303\316\317#\210\303\320\321#\210\303\322\323#\210\303\324\325#\210\303\326\327#\210\303\330\331#\210\207" [make-sparse-keymap "Errors" "Skip" define-key [stop-subjob] (menu-item "Stop Compilation" kill-compilation :help "Kill the process made by the M-x compile or M-x grep commands") [compilation-mode-separator3] ("----") [compilation-next-error-follow-minor-mode] (menu-item "Auto Error Display" next-error-follow-minor-mode :help "Display the error under cursor when moving the cursor" :button (:toggle . next-error-follow-minor-mode)) [compilation-skip] "Skip Less Important Messages" [compilation-skip-none] (menu-item "Don't Skip Any Messages" (lambda nil (interactive) (customize-set-variable 'compilation-skip-threshold 0)) :help "Do not skip any type of messages" :button (:radio eq compilation-skip-threshold 0)) [compilation-skip-info] (menu-item "Skip Info" (lambda nil (interactive) (customize-set-variable 'compilation-skip-threshold 1)) :help "Skip anything less than warning" :button (:radio eq compilation-skip-threshold 1)) [compilation-skip-warning-and-info] (menu-item "Skip Warnings and Info" (lambda nil (interactive) (customize-set-variable 'compilation-skip-threshold 2)) :help "Skip over Warnings and Info, stop for errors" :button (:radio eq compilation-skip-threshold 2)) [compilation-mode-separator2] ("----") [compilation-first-error] (menu-item "First Error" first-error :help "Restart at the first error, visit corresponding source code") [compilation-previous-error] (menu-item "Previous Error" previous-error :help "Visit previous `next-error' message and corresponding source code") [compilation-next-error] (menu-item "Next Error" next-error :help "Visit next `next-error' message and corresponding source code")] 7))
#@38 Keymap for `compilation-minor-mode'.
(defvar compilation-minor-mode-map (byte-code "\302 \303\"\210\304\305\306#\210\304\307\310#\210\304\311\306#\210\304\312\306#\210\304\313\314#\210\304\315\316#\210\304\317\320#\210\304\321\322#\210\304\323\324#\210\304\325\326#\210\304\327\330#\210\304\331\332	B#\210\211\207" [special-mode-map compilation-menu-map make-sparse-keymap set-keymap-parent define-key [mouse-2] compile-goto-error [follow-link] mouse-face "" "
" "" compilation-display-error "" kill-compilation "\356" compilation-next-error "\360" compilation-previous-error "\373" compilation-previous-file "\375" compilation-next-file "g" recompile [menu-bar compilation] "Errors"] 6) (#$ . 59097))
#@44 Keymap for `compilation-shell-minor-mode'.
(defvar compilation-shell-minor-mode-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302\315\316B#\210\211\207" [compilation-menu-map make-sparse-keymap define-key "\215" compile-goto-error "\216" compilation-next-error "\220" compilation-previous-error "\373" compilation-previous-file "\375" compilation-next-file [menu-bar compilation] "Errors"] 6) (#$ . 59824))
#@41 Keymap for compilation-message buttons.
(defvar compilation-button-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\303#\210\211\207" [make-sparse-keymap define-key [mouse-2] compile-goto-error [follow-link] mouse-face "
"] 5) (#$ . 60305))
(fset 'compilation-button-map compilation-button-map)
#@87 Keymap for compilation log buffers.
`compilation-minor-mode-map' is a parent of this.
(defvar compilation-mode-map (byte-code "\302 \303\"\210\304\305\306#\210\304\307\310#\210\304\311\306#\210\304\312\306#\210\304\313\314#\210\304\315\316#\210\304\317\320#\210\304\321\322#\210\304\323\324#\210\304\325\326#\210\304\327\320#\210\304\330\322#\210\304\331\332#\210\304\333\334#\210\302\335!\304\336\335B#\210\303	\"\266\304\337\340#\210\304\341\342#\210\304\343\344#\210\304\345\346#\210\211\207" [special-mode-map compilation-menu-map make-sparse-keymap set-keymap-parent define-key [mouse-2] compile-goto-error [follow-link] mouse-face "" "
" "" compilation-display-error "" kill-compilation "\356" compilation-next-error "\360" compilation-previous-error "\373" compilation-previous-file "\375" compilation-next-file "	" [backtab] "g" recompile "" next-error-follow-minor-mode "Compile" [menu-bar compilation] [menu-bar compilation compilation-separator2] ("----") [menu-bar compilation compilation-grep] (menu-item "Search Files (grep)..." grep :help "Run grep, with user-specified args, and collect output in a buffer") [menu-bar compilation compilation-recompile] (menu-item "Recompile" recompile :help "Re-compile the program including the current buffer") [menu-bar compilation compilation-compile] (menu-item "Compile..." compile :help "Compile the program including the current buffer.  Default: run `make'")] 7) (#$ . 60624))
(defvar compilation-mode-tool-bar-map (byte-code "\302!\205L\303!\304\305\306#\210\304\307\306#\210\310\311	#\210\312\313\314\211\315\316\317\320&\210\312\316\321\211\315\313\317\322&\210\312\323\324\211\325\326\317\327&\210\312\330\331\211\317\332&\210\211\262\207" [tool-bar-map menu-bar-separator keymapp copy-keymap define-key [undo] nil [separator-2] define-key-after [separator-compile] tool-bar-local-item "left-arrow" previous-error-no-select :rtl "right-arrow" :help "Goto previous error" next-error-no-select "Goto next error" "cancel" kill-compilation :enable (let ((buffer (compilation-find-buffer))) (get-buffer-process buffer)) "Stop compilation" "refresh" recompile "Restart compilation"] 10))
(put 'compilation-mode 'mode-class 'special)
#@350 Major mode for compilation log buffers.
\<compilation-mode-map>To visit the source for a line-numbered error,
move point to the error message line and type \[compile-goto-error].
To kill the compilation, type \[kill-compilation].

Runs `compilation-mode-hook' with `run-mode-hooks' (which see).

\{compilation-mode-map}

(fn &optional NAME-OF-MODE)
(defalias 'compilation-mode #[256 "\306 \210\307!\210\310\301!\210\311\310\303!\210\n\312\211\206\313\310\314!\210\f\315 \210\310\316!\210\317\311\320\321!\207" [compilation-mode-map window-point-insertion-type compilation-mode-tool-bar-map tool-bar-map major-mode mode-name kill-all-local-variables use-local-map make-local-variable t compilation-mode "Compilation" page-delimiter compilation-setup jit-lock-defer-time nil run-mode-hooks compilation-mode-hook compilation-page-delimiter buffer-read-only] 3 (#$ . 62867) nil])
(put 'define-compilation-mode 'doc-string-elt 3)
#@355 This is like `define-derived-mode' without the PARENT argument.
The parent is always `compilation-mode' and the customizable `compilation-...'
variables are also set from the name of the mode you have chosen,
by replacing the first word, e.g., `compilation-scroll-output' from
`grep-scroll-output' if that variable exists.

(fn MODE NAME DOC &rest BODY)
(defalias 'define-compilation-mode '(macro . #[899 "\301\302\303\304!#\305\306\307\310\311\312\"\")BBBBB\207" [mode-name replace-regexp-in-string "-mode\\'" "" symbol-name define-derived-mode compilation-mode append mapcar #[257 "\211\302\303\304\305!#!B\262\211A\2051\306A!\204'\306\301!\2051\211A	>\2051\307\310\311@DDAE\207" [mode-name byte-compile-bound-variables intern-soft replace-regexp-in-string "^compilation" symbol-name boundp set make-local-variable quote] 8 "\n\n(fn V)"] (compilation-directory-matcher compilation-error compilation-error-regexp-alist compilation-error-regexp-alist-alist compilation-error-screen-columns compilation-finish-functions compilation-first-column compilation-mode-font-lock-keywords compilation-page-delimiter compilation-parse-errors-filename-function compilation-process-setup-function compilation-scroll-output compilation-search-path compilation-skip-threshold compilation-window-height)] 13 (#$ . 63813)]))
#@30 

(fn IGNORE-AUTO NOCONFIRM)
(defalias 'compilation-revert-buffer #[514 "\203\f\303\304\")\207\211\204\305\306\307!!\205\310\311\n\"\207" [buffer-file-name revert-buffer-function compilation-arguments nil revert-buffer yes-or-no-p format "Restart compilation? " apply compilation-start] 5 (#$ . 65147)])
#@132 Marker to the location from where the next error will be found.
The global commands next/previous/first-error/goto-error use this.
(defvar compilation-current-error nil (#$ . 65467))
#@100 Buffer position of the beginning of the compilation messages.
If nil, use the beginning of buffer.
(defvar compilation-messages-start nil (#$ . 65657))
#@168 Prepare the buffer for the compilation parsing commands to work.
Optional argument MINOR indicates this is called from
`compilation-minor-mode'.

(fn &optional MINOR)
(defalias 'compilation-setup #[256 "\306\307!\210\306\310!\210\306\311!\210\306\312!\210\306\300!\210\313\306\301!\210\313\306\302!\210\313\306\303!\210\314\315\316\317\320\315\321$\210\322\306\323!\210\324#!\206?\314\306\325!\210\326\327\330\331\332$\316\333\334\315\321$\210\316\335\336\315\321$\210\211\203h\337\315\340 \"\210\341 \207\342\211$\207" [compilation-num-errors-found compilation-num-warnings-found compilation-num-infos-found overlay-arrow-string next-error-overlay-arrow-position next-error-function make-local-variable compilation-current-error compilation-messages-start compilation-error-screen-columns overlay-arrow-position 0 "" nil add-hook kill-buffer-hook #[0 "\301\211\207" [next-error-overlay-arrow-position nil] 2] t compilation-next-error-function comint-file-name-prefix file-remote-p compilation-locs make-hash-table :test equal :weakness value before-change-functions compilation--flush-parse change-major-mode-hook compilation--remove-properties font-lock-add-keywords compilation-mode-font-lock-keywords font-lock-flush (compilation-mode-font-lock-keywords t) default-directory font-lock-defaults] 6 (#$ . 65816)])
(defalias 'compilation--unsetup #[0 "\300\301\302 \"\210\303\304\305\306#\210\307\310!\210\311 \210\312 \207" [font-lock-remove-keywords nil compilation-mode-font-lock-keywords remove-hook before-change-functions compilation--flush-parse t kill-local-variable compilation--parsed compilation--remove-properties font-lock-flush] 4])
#@125 Non-nil if Compilation-Shell minor mode is enabled.
Use the command `compilation-shell-minor-mode' to change this variable.
(defvar compilation-shell-minor-mode nil (#$ . 67486))
(make-variable-buffer-local 'compilation-shell-minor-mode)
#@514 Toggle Compilation Shell minor mode.

If called interactively, enable Compilation-Shell minor mode if ARG is
positive, and disable it if ARG is zero or negative.  If called from
Lisp, also enable the mode if ARG is omitted or nil, and toggle it if
ARG is `toggle'; disable the mode otherwise.

When Compilation Shell minor mode is enabled, all the
error-parsing commands of the Compilation major mode are
available but bound to keys that don't collide with Shell mode.
See `compilation-mode'.

(fn &optional ARG)
(defalias 'compilation-shell-minor-mode #[256 "\301 \302=\203
?\202\303!\304V\211\203\305\306!\210\202!\307 \210\310\311\203+\312\202,\313\"\210\314\315!\203P\301 \203@\211\301 \232\203P\316\317\320\203K\321\202L\322#\266\210\323 \210\207" [compilation-shell-minor-mode current-message toggle prefix-numeric-value 0 compilation-setup t compilation--unsetup run-hooks compilation-shell-minor-mode-hook compilation-shell-minor-mode-on-hook compilation-shell-minor-mode-off-hook called-interactively-p any " in current buffer" message "Compilation-Shell minor mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 67731) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar compilation-shell-minor-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [compilation-shell-minor-mode-map compilation-shell-minor-mode-hook variable-documentation put "Hook run after entering or leaving `compilation-shell-minor-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 compilation-shell-minor-mode " Shell-Compile" boundp nil] 6)
#@113 Non-nil if Compilation minor mode is enabled.
Use the command `compilation-minor-mode' to change this variable.
(defvar compilation-minor-mode nil (#$ . 69465))
(make-variable-buffer-local 'compilation-minor-mode)
#@440 Toggle Compilation minor mode.

If called interactively, enable Compilation minor mode if ARG is
positive, and disable it if ARG is zero or negative.  If called from
Lisp, also enable the mode if ARG is omitted or nil, and toggle it if
ARG is `toggle'; disable the mode otherwise.

When Compilation minor mode is enabled, all the error-parsing
commands of Compilation major mode are available.  See
`compilation-mode'.

(fn &optional ARG)
(defalias 'compilation-minor-mode #[256 "\301 \302=\203
?\202\303!\304V\211\203\305\306!\210\202!\307 \210\310\311\203+\312\202,\313\"\210\314\315!\203P\301 \203@\211\301 \232\203P\316\317\320\203K\321\202L\322#\266\210\323 \210\207" [compilation-minor-mode current-message toggle prefix-numeric-value 0 compilation-setup t compilation--unsetup run-hooks compilation-minor-mode-hook compilation-minor-mode-on-hook compilation-minor-mode-off-hook called-interactively-p any " in current buffer" message "Compilation minor mode %sabled%s" "en" "dis" force-mode-line-update] 8 (#$ . 69686) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar compilation-minor-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\207" [compilation-minor-mode-map compilation-minor-mode-hook variable-documentation put "Hook run after entering or leaving `compilation-minor-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 compilation-minor-mode " Compilation" boundp nil] 6)
#@104 Write MSG in the current buffer and hack its `mode-line-process'.

(fn PROCESS-STATUS EXIT-STATUS MSG)
(defalias 'compilation-handle-exit #[771 "\306\203
#\202Bd`pb\210\307\n\310@\261\210\247\2032\311U\2032\312\313A\"\210n\2039\314u\210\315\316\317 \311\320#\261\210db\210\321`\322\323\324\"#\210\325\326	A#\325\327\n\330\331\332\n@##\312\313\"\210\333\334\335
\311V\203w\336\202x\337%\266\202\fD\340 \210\203\216W\203\216b\210\341\342#)\207" [compilation-exit-message-function inhibit-read-only mode-name compilation-window-height compilation-mode-line-errors mode-line-process t 10 " " 0 message "%s" -1 " at " substring current-time-string 19 add-text-properties append (compilation-handle-exit t) nil format ":%s [%s]" "%s %s" replace-regexp-in-string "\n?$" "" propertize help-echo face compilation-mode-line-fail compilation-mode-line-exit force-mode-line-update run-hook-with-args compilation-finish-functions] 17 (#$ . 71278)])
#@50 Sentinel for compilation buffers.

(fn PROC MSG)
(defalias 'compilation-sentinel #[514 "\301!\302>\2055\303!\304!\204\305\306\"\210\202,r\211q\210\307\301!\310!#\210\311!\210)\312\"\313 \262\207" [compilation-in-progress process-status (exit signal) process-buffer buffer-name set-process-buffer nil compilation-handle-exit process-exit-status delete-process delq compilation--update-in-progress-mode-line] 7 (#$ . 72264)])
#@182 Process filter for compilation buffers.
Just inserts the text,
handles carriage motion (see `comint-inhibit-carriage-motion'),
and runs `compilation-filter-hook'.

(fn PROC STRING)
(defalias 'compilation-filter #[514 "\303\304!!\205Zr\304!q\210\305\306`\305\"\307 \306d\305\"\310\311!!\312\313\314\315\316#\317\"\320$\216~\210b\210c\210\n\204G\321\311!`\"\210\311!`\322\223\210\323`!\210\324\325!+\266\204)\207" [compilation-filter-start inhibit-read-only comint-inhibit-carriage-motion buffer-live-p process-buffer t copy-marker point-min-marker marker-position process-mark make-byte-code 0 "\300b\210\301\302}\210\300\303\211\223\210\301\303\211\223\210\302\303\211\223\207" vconcat vector [nil] 3 comint-carriage-motion nil compilation--ensure-parse run-hooks compilation-filter-hook] 14 (#$ . 72711)])
#@38 Test if inside a compilation buffer.
(defalias 'compilation-buffer-internal-p #[0 "\300\301!\207" [local-variable-p compilation-locs] 2 (#$ . 73545)])
(put 'compilation-buffer-internal-p 'byte-optimizer 'byte-compile-inline-expand)
#@54 Test if BUFFER is a compilation buffer.

(fn BUFFER)
(defalias 'compilation-buffer-p #[257 "r\211q\210\300\301!)\207" [local-variable-p compilation-locs] 3 (#$ . 73783)])
(put 'compilation-buffer-p 'byte-optimizer 'byte-compile-inline-expand)
#@41 

(fn < PROPERTY-CHANGE 1+ ERROR LIMIT)
(defalias 'compilation-loop '(macro . #[1285 "\300\301\302\303B\304\305\306\307\310BE\311\305\312\313\314BB\315BB\316BB\317\320BB\306\307\fEFE\305\321\311\306\307\307\322\323\257E\324BB\317\325BBF\305\326\327\330\331\306\332\333BE\257\257E\207" [let (opt) while (n 0) (setq opt pt) or setq pt (pt 'compilation-message) if eq get-text-property ('compilation-message) ((get-text-property opt 'compilation-message)) ((eq pt opt)) user-error (compilation-error) (setq msg (get-text-property pt 'compilation-message)) 'compilation-message nil ((setq msg (get-text-property pt 'compilation-message))) (compilation-error) (< (compilation--message->type msg) compilation-skip-threshold) (if different-file (eq (prog1 last (setq last (compilation--loc->file-struct (compilation--message->loc msg)))) last)) (if compilation-skip-visited (compilation--loc->visited (compilation--message->loc msg))) (if compilation-skip-to-next-location (eq (compilation--message->loc msg) loc)) n (n)] 21 (#$ . 74032)]))
#@45 

(fn POSITION PROP &optional OBJECT LIMIT)
(defalias 'compilation-next-single-property-change #[1026 "\301\211\302\303\\\206
d^]\211\262!\210\304$\211\262\203*\211=\203:\2060dW\203:\262\202\207" [compilation--parsed nil compilation--ensure-parse 500 next-single-property-change] 11 (#$ . 75092)])
#@456 Move point to the next error in the compilation buffer.
This function does NOT find the source line like \[next-error].
Prefix arg N says how many error messages to move forwards (or
backwards, if negative).
Optional arg DIFFERENT-FILE, if non-nil, means find next error for a
file that is different from the current one.
Optional arg PT, if non-nil, specifies the value of point to start
looking for the next message.

(fn N &optional DIFFERENT-FILE PT)
(defalias 'compilation-next-error #[769 "pr\211q\210\305\306!)\262\204\307\310!\210\211\204`\262\311!\210\312\313\"\211\2057\314!>\2044\315\316\317D\"\210\211\320H\321\322U\203~\204L\312Se]\313\"\211\262\204L\323\313\321\324 $\262\312Se]\313\"\211\262\204L\325\313\321\326 $\262\312\313\"\211\262\204L`\262\202L\3278\262\322Y\203r\321\322V\203n\262\325\313\"\211\262\204\305\312d\313\"\312\313\"=\204\260=\203\302\330\331p!\203\273\332\202\274\333	\"\210\202\305d\262\312\313\"\211\262\204\364\325\313\321d$\211\262\203\345\312\313\"\211\262\204\364\330\331p!\203\360\332\202\361\333	\"\210\314!>\204\315\316\317D\"\210\327H\nW\204\212\203.\327\314!>\204#\315\316\317D\"\210\320H8\262=\204\212\203J\334\314!>\204C\315\316\317D\"\210\320H\233\204\212\f\203f\314!>\204^\315\316\317D\"\210\320H=\204\212S\262\202\212\210\202L\323\313\321e$\262\321\322W\203K\262\323\313\"\211\262\204\254\312e\313\"\312\313\"=\204\241=\203\251\330\335	\"\210\202\254e\262\312\313\"\211\262\204\321\323\313\321e$\211\262\203\314\312\313\"\211\262\204\321\330\335	\"\210\314!>\204\341\315\316\317D\"\210\327H\nW\204{\203\327\314!>\204\315\316\317D\"\210\320H8\262=\204{\203'\334\314!>\204 \315\316\317D\"\210\320H\233\204{\f\203C\314!>\204;\315\316\317D\"\210\320H=\204{T\262\202{\210b\210\206W\330\336	\"\207" [cl-struct-compilation--message-tags compilation-error compilation-skip-threshold compilation-skip-visited compilation-skip-to-next-location local-variable-p compilation-locs error "Not in a compilation buffer" compilation--ensure-parse get-text-property compilation-message type-of signal wrong-type-argument compilation--message 1 nil 0 previous-single-property-change line-beginning-position compilation-next-single-property-change line-end-position 2 user-error get-buffer-process "No more %ss yet" "Moved past last %s" 5 "Moved back before first %s" "No %s here"] 13 (#$ . 75423) "p"])
#@211 Move point to the previous error in the compilation buffer.
Prefix arg N says how many error messages to move backwards (or
forwards, if negative).
Does NOT find the source line like \[previous-error].

(fn N)
(defalias 'compilation-previous-error #[257 "\300[!\207" [compilation-next-error] 3 (#$ . 77946) "p"])
#@160 Move point to the next error for a different file than the current one.
Prefix arg N says how many files to move forwards (or backwards, if negative).

(fn N)
(defalias 'compilation-next-file #[257 "\300\301\"\207" [compilation-next-error t] 4 (#$ . 78267) "p"])
#@164 Move point to the previous error for a different file than the current one.
Prefix arg N says how many files to move backwards (or forwards, if negative).

(fn N)
(defalias 'compilation-previous-file #[257 "\300[!\207" [compilation-next-file] 3 (#$ . 78538) "p"])
#@57 Display the source for current error in another window.
(defalias 'compilation-display-error #[0 "`\301\302!\207" [compilation-current-error next-error-no-select 0] 2 (#$ . 78809) nil])
#@62 Kill the process made by the \[compile] or \[grep] commands.
(defalias 'kill-compilation #[0 "\301 \302!\203\303\302!!\202\304\305\227\"\207" [mode-name compilation-find-buffer get-buffer-process interrupt-process error "The %s process is not running"] 4 (#$ . 79002) nil])
(defalias 'compile-mouse-goto-error 'compile-goto-error)
#@118 Visit the source for the error message at point.
Use this command in a compilation log buffer.

(fn &optional EVENT)
(defalias 'compile-goto-error #[256 "\211\203\n\301\302!!\210pr\211q\210\303\304!)\262\204\305\306!\210\307`!\210\310`\311\"\203/\312\310`\311\"@!\207`\313 \207" [compilation-current-error posn-set-point event-end local-variable-p compilation-locs error "Not in a compilation buffer" compilation--ensure-parse get-text-property compilation-directory dired-other-window next-error-internal] 5 (#$ . 79347) (list last-input-event)])
#@223 Return a compilation buffer.
If AVOID-CURRENT is nil, and the current buffer is a compilation buffer,
return it.  If AVOID-CURRENT is non-nil, return the current buffer only
as a last resort.

(fn &optional AVOID-CURRENT)
(defalias 'compilation-find-buffer #[256 "\300\301!\203\f\211\204\fp\207\302\303\"\207" [local-variable-p compilation-locs next-error-find-buffer compilation-buffer-internal-p] 4 (#$ . 79909)])
#@166 Advance to the next error message and visit the file where the error was.
This is the value of `next-error-function' in Compilation buffers.

(fn N &optional RESET)
(defalias 'compilation-next-error-function #[513 "\211\203\306	\n\307\310\206\307\306\206\206e#\311!\f>\204)\312\313\314D\"\210\211\307H\311!\f>\204;\312\313\314D\"\210\315H\316 \204H\317\320!\210\316 n\203S\202W\321\322 !\3158\203f\323\3158!\204(r\324\3258@@!\203y\3258@@\202\220\326\327\3258@@\3258@A@\3258A@%q\210\330\301!\203\234	\202\236\330\302!\203\250\n\202\252\214~\210eb\210\331\3258AA!\211\203$\211@\211@\203\321\332\333@\n\334#!\210\211@\262\211A\211\203\211@\211@\203\365\211@\334=\203\353\306\210\202\374\335@\"\210\202\374\336 \210\337\306w\210\3158\203\f\3158`\306\223\210\202\315\233\211\316 \240\266A\266\202\202\323\210A\266\202\202\270\210*\210)\340\3158\3158#\210\341\233\342\241\207" [compilation-current-error compilation-error-screen-columns compilation-first-column compilation-messages-start cl-struct-compilation--message-tags overlay-arrow-position nil 1 compilation-next-error type-of signal wrong-type-argument compilation--message 3 point-marker user-error "No next error" copy-marker line-beginning-position marker-buffer bufferp 2 apply compilation-find-file local-variable-p reverse compilation-beginning-of-line - -1 compilation-move-to-column beginning-of-line " 	" compilation-goto-locus 4 t] 17 (#$ . 80335) "p"])
#@61 Internal variable used to keep some values from being GC'd.
(defvar compilation-gcpro nil (#$ . 81839))
(make-variable-buffer-local 'compilation-gcpro)
#@800 Preassociate MARKER with FILE.
FILE should be ABSOLUTE-FILENAME or (RELATIVE-FILENAME . DIRNAME).
This is useful when you compile temporary files, but want
automatic translation of the messages to the real buffer from
which the temporary file came.  This may also affect previous messages
about FILE.

Optional args LINE and COL default to 1 and beginning of
indentation respectively.  The marker is expected to reflect
this.  In the simplest case the marker points to the first line
of the region that was saved to the temp file.

If you concatenate several regions into the temp file (e.g. a
header with variable assignments and a code region), you must
call this several times, once each for the last line of one
region and the first line of the next region.

(fn MARKER FILE &optional LINE COL)
(defalias 'compilation-fake-loc #[1026 ":\204	C\262\301!\210\302!\211B\211A\211A\211\203<\211@@\203.\206'\303@@W\202/\304\203<\211\262A\262\202\211\203P\206E\303@@=\203P\211\202Z\206V\303CB\241@\266\202\211\211A\204o\211\203\237\211@@?\202\230\211\203\217\211@@\203\201@@W\202\202\304\203\217\211\262A\262\202o\211\203\237@@=\203\237\211\202\245CB\241@\266\202\262\211A\203\263\305\306!\210\211\307F\241\210\211\262\207" [compilation-gcpro compilation--flush-file-structure compilation-get-file-structure 1 t cl--assertion-failed (null (cdr loc)) nil] 11 (#$ . 81998)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-context-lines funcall function #[0 "\300\207" [nil] 1] "Display this many lines of leading context before the current message.\nIf nil or t, and the left fringe is displayed, don't scroll the\ncompilation output window; an arrow in the left fringe points to\nthe current message.  With no left fringe, if nil, the message\nscrolls to the top of the window; there is no arrow.  If t, don't\nscroll the compilation output window at all; an arrow before\ncolumn zero points to the current message." :type (choice integer (const :tag "Scroll window when no fringe" nil) (const :tag "No window scrolling" t)) :version "22.1"] 8)
#@81 Maybe align the compilation output window W with marker MK near top.

(fn W MK)
(defalias 'compilation-set-window #[514 "\250\203\301\212b\210\302\303Z!\210`)\"\210\2023\2043\304!@\305\232\2033\301\212b\210\306\303!\210`)\"\210\307\"\207" [compilation-context-lines set-window-start compilation-beginning-of-line 1 window-fringes 0 beginning-of-line set-window-point] 7 (#$ . 84155)])
(put 'compilation-set-window 'byte-optimizer 'byte-compile-inline-expand)
#@180 Overlay with the before-string property of `overlay-arrow-string'.

When non-nil, this overlay causes redisplay to display `overlay-arrow-string'
at the overlay's start position.
(defvar compilation-arrow-overlay nil (#$ . 84636))
(make-variable-buffer-local 'compilation-arrow-overlay)
#@65 The string which will appear in the margin in compilation mode.
(defconst compilation--margin-string (propertize "=>" 'face 'default) (#$ . 84929))
#@124 A string which is only a placeholder for `compilation--margin-string'.
Actual value is never used, only the text property.
(defconst compilation--dummy-string (byte-code "\301\302\303\304D#\207" [compilation--margin-string propertize ">" display (margin left-margin)] 5) (#$ . 85084))
#@75 Setup the margin for "=>" in window W if it isn't already set up.

(fn W)
(defalias 'compilation--set-up-margin #[257 "\300\301!@\206\n\302\303\\\"\207" [set-window-margins window-margins 0 2] 5 (#$ . 85376)])
#@64 Remove the margin for "=>" if it is setup in window W.

(fn W)
(defalias 'compilation--tear-down-margin #[257 "\300!\205\301\300!@\302Z\"\207" [window-margins set-window-margins 2] 5 (#$ . 85595)])
#@69 Set up compilation-arrow-overlay to display as an arrow in margins.
(defalias 'compilation--set-up-arrow-spec-in-margins #[0 "\304\305	\211\"\306\n\307#\210\310\311\312\313\211\314#\"\210\315\316\311\313\314$\210\315\317\320\313\314$\207" [overlay-arrow-string overlay-arrow-position compilation-arrow-overlay compilation--dummy-string "" make-overlay overlay-put before-string mapc compilation--set-up-margin get-buffer-window-list nil t add-hook window-buffer-change-functions change-major-mode-hook compilation--tear-down-arrow-spec-in-margins] 6 (#$ . 85804)])
#@80 Restore compilation-arrow-overlay to not using the margins, which are removed.
(defalias 'compilation--tear-down-arrow-spec-in-margins #[0 "\301!\205&\302\303\304#\210\305!\210\304\306\307\310\304\211\311#\"\210\312\313\314\311#\210\312\315\316\311#\207" [compilation-arrow-overlay overlayp overlay-put before-string nil delete-overlay mapc compilation--tear-down-margin get-buffer-window-list t remove-hook change-major-mode-hook compilation--tear-down-arrow-spec-in-margins window-buffer-change-functions compilation--set-up-margin] 6 (#$ . 86378)])
#@64 Set up, or switch off, the overlay-arrow for window W.

(fn W)
(defalias 'compilation-set-overlay-arrow #[257 "\303!r\304\305\306\307\310!\311\"\312$\216\313@\314\"\210\315=\203T\316!@\305\232\203T\317	!\203F\320	!\n=\204M\n\203@\321	\n\211#\210\202M\322 \210\202M\n\203M\323 \210\320	!b\202\\\317	!\205\\\322 *\207" [compilation-context-lines compilation-arrow-overlay overlay-arrow-position internal--before-with-selected-window make-byte-code 0 "\301\300!\207" vconcat vector [internal--after-with-selected-window] 2 select-window norecord t window-fringes overlayp overlay-start move-overlay compilation--tear-down-arrow-spec-in-margins compilation--set-up-arrow-spec-in-margins] 8 (#$ . 86941)])
#@184 Jump to an error corresponding to MSG at MK.
All arguments are markers.  If END-MK is non-nil, mark is set there
and overlay is highlighted between MK and END-MK.

(fn MSG MK END-MK)
(defalias 'compilation-goto-locus #[771 "\306 \307!=\310\307!\311\"\203\211\203\211\202\312\307!\313\"r\307!q\210\314!b\210\211\203p\211\250\203K\315\212b\210\316\317Z!\210`)\"\210\202f\204f\320!@\311\232\203f\315\212b\210\321\317!\210`)\"\210\322\"\266\323!\210	)\204~\203~\324!\210\203\220\325\326\307!\327\"\210)\202\227\330\307!!\210b`=\204\261~\210\203\256\"\210\202\261b\210\203\275\331\325\"\210\202\303\f\203\303\332\333`!\211\203\344\211@\334\335\"\336=\203\335\337!\210b\210A\266\202\202\306\210\211\203y\340
!\203\363\341
!\210/\204\342ee\"/\343/\344\345#\210r\307!q\210\212\203b\210\202\332\210`\203'b\210\202*\321 \210;\203H\346\325#\203H\311\224b\210\347/\311\224\311\225p$\210\202P\347/`p$\2100\325=\204]0\247\203e\350\351\352\"\210\202j\337/!\2100\247\203w\3530\332\352#\210*0\354=\205\207\355\356 !\2111\207" [compilation-context-lines compilation-highlight-regexp pop-up-windows next-error-move-function mark-active next-error-highlight-timer window-buffer marker-buffer get-buffer-window 0 display-buffer (nil (allow-no-window . t)) marker-position set-window-start compilation-beginning-of-line 1 window-fringes beginning-of-line set-window-point compilation-set-overlay-arrow compilation-set-window-height t pop-to-buffer other-window switch-to-buffer push-mark nil overlays-at overlay-get invisible hs delete-overlay timerp cancel-timer make-overlay overlay-put face next-error re-search-forward move-overlay add-hook pre-command-hook compilation-goto-locus-delete-o run-at-time fringe-arrow copy-marker line-beginning-position compilation-highlight-overlay next-error-highlight next-error-overlay-arrow-position] 13 (#$ . 87664)])
(defalias 'compilation-goto-locus-delete-o #[0 "\302!\210\303	!\203\304	!\210\305\306\307\"\207" [compilation-highlight-overlay next-error-highlight-timer delete-overlay timerp cancel-timer remove-hook pre-command-hook compilation-goto-locus-delete-o] 3])
#@726 Find a buffer for file FILENAME.
If FILENAME is not found at all, ask the user where to find it.
Pop up the buffer containing MARKER and scroll to MARKER if we ask
the user where to find the file.
Search the directories in `compilation-search-path'.
A nil in `compilation-search-path' means to try the
"current" directory, which is passed in DIRECTORY.
If DIRECTORY is relative, it is combined with `default-directory'.
If DIRECTORY is nil, that means use `default-directory'.
FORMATS, if given, is a list of formats to reformat FILENAME when
looking for it: for each element FMT in FORMATS, this function
attempts to find a file whose name is produced by (format FMT FILENAME).

(fn MARKER FILENAME DIRECTORY &rest FORMATS)
(defalias 'compilation-find-file #[899 "\211\204\305\262\203\306!\202	\307\211\211\211\203:\310	!\203:\311\306\n!!\262	\312	!B\262\313	!\262	\203z\204z@\206H\262\262\203s\204s\306\314@\"\"\262\315!\205j\316!\262A\262\202NA\262\202:\2048\212\317\320\321!\322\")r\321!q\210\nb\210\211\203\330\211\250\203\263\323\212b\210\324\325Z!\210`)\"\210\202\316\204\316\326!@\327\232\203\316\323\212b\210\330\325!\210`)\"\210\331\"\266\332!\210)\333\314\334\f
\203\352\314\335\"\202\353\336#\f\317\307%\211\315!\204	\337\340\"\210\341 \210\342\343!\210\2022\344!\203-\315\306
\"\211\262!\204-\337\345
#\210\341 \210\342\343!\210\2022\316!\262\266)\202z\346ed\"\211\203V\211@\347\350\"\203O\351\350\307#\210A\266\202\202<\210\207" [compilation-search-path default-directory pop-up-windows compilation-context-lines compilation-error ("%s") expand-file-name nil file-name-absolute-p abbreviate-file-name file-name-directory file-name-nondirectory format file-exists-p find-file-noselect t display-buffer marker-buffer (nil (allow-no-window . t)) set-window-start compilation-beginning-of-line 1 window-fringes 0 beginning-of-line set-window-point compilation-set-overlay-arrow read-file-name "Find this %s in%s: " " (default %s)" "" message "Cannot find file `%s'" ding sit-for 2 file-directory-p "No `%s' in directory %s" overlays-in overlay-get intangible overlay-put] 18 (#$ . 89883)])
#@330 Retrieve FILE's file-structure or create a new one.
FILE should be (FILENAME) or (RELATIVE-FILENAME . DIRNAME).
In the former case, FILENAME may be relative or absolute.

The file-structure looks like this:
  ((FILENAME [TRUE-DIRNAME]) FMT ...)

TRUE-DIRNAME is the `file-truename' of DIRNAME, if given.

(fn FILE &optional FMT)
(defalias 'compilation-get-file-structure #[513 "\303\"\206a@A\205\304	AP!\305!\203	P\262\n\306>\204:\307 \310\311\312\313\314!\315\"\316$\216\n!\262)\210;\203D\317!\262\320\303B\"\206]\320BD\321BB##\266\202\207" [compilation-locs comint-file-name-prefix compilation-parse-errors-filename-function gethash file-truename file-name-absolute-p (nil identity) match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 command-line-normalize-file-name puthash nil] 11 (#$ . 92100)])
#@13 

(fn FILE)
(defalias 'compilation--flush-file-structure #[257 "\211:\204	\211C\262\301!\211\302\"=\204\303\304!\210\211\302@@@A@B\"=\204-\303\305!\210\306\307\310\311\312\313!\314\"\315\316%\"\207" [compilation-locs compilation-get-file-structure gethash cl--assertion-failed (eq fs (gethash file compilation-locs)) (eq fs (gethash (cons (caar fs) (cadr (car fs))) compilation-locs)) maphash make-byte-code 514 "\211\300=\205\n\302	\"\207" vconcat vector [compilation-locs remhash] 5 "\n\n(fn K V)"] 9 (#$ . 92982)])
(defvaralias 'compilation-last-buffer 'next-error-last-buffer)
(defvar compilation-parsing-end (make-marker))
(defvar compilation-error-list nil)
(defvar compilation-old-error-list nil)
#@14 

(fn LIMIT)
(defalias 'compilation--compat-parse-errors #[257 "\203}\212\303\n\203\n`\303\223\210\202\304 \3051\"\303\"0\202&\210\202'\210	<\205-	\211\203{\211@\211@A\306!\203G\303\211\211\303FB\202]\211:\205]\3078A@@A@@B\303\211FB\211\203rb\210\310\311 \312\313\314\307\303$$\210\266A\266\202\202-\210)\211b\210\303\207" [compilation-parse-errors-function compilation-error-list compilation-parsing-end nil point-marker (error) markerp 2 put-text-property line-end-position compilation-message record compilation--message] 15 (#$ . 93708)])
(defalias 'compilation-forget-errors #[0 "\306!\210\307\211\310p!\211\205\311!\211\206d\211eV\203$\312S!\202%\211\266\313\314!\210\f\2063
\315=\211\f\207" [compilation-locs compilation-gcpro compilation-current-error compilation-messages-start compilation-auto-jump-to-first-error compilation-scroll-output clrhash nil get-buffer-process process-mark copy-marker make-local-variable compilation-auto-jump-to-next first-error] 6])
(provide 'compile)

Zerion Mini Shell 1.0