Function: compilation--make-file-struct
compilation--make-file-struct is a macro defined in compile.el.gz.
Signature
(compilation--make-file-struct FILE-SPEC FORMATS &optional LOC-TREE)
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/compile.el.gz
;; FILE-STRUCTURE is a list of
;; ((FILENAME DIRECTORY) FORMATS (LINE LOC ...) ...)
;; FILENAME is a string parsed from an error message, or the buffer which was
;; compiled. DIRECTORY is a string obtained by following directory change
;; messages. DIRECTORY will be nil for an absolute filename or a buffer.
;; FORMATS is a list of formats to apply to FILENAME if a file of that name
;; can't be found.
;; The rest of the list is an alist of elements with LINE as key. The keys
;; are either nil or line numbers. If present, nil comes first, followed by
;; the numbers in decreasing order. The LOCs for each line are again an alist
;; ordered the same way. Note that the whole file structure is referenced in
;; every LOC.
(defmacro compilation--make-file-struct (file-spec formats &optional loc-tree)
`(cons ,file-spec (cons ,formats ,loc-tree)))