From 491cc4a1bd68c2f651027982e3dfb7545d3e57ab Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jo=C3=A3o=20T=C3=A1vora?= Date: Thu, 21 Sep 2017 14:45:21 +0100 Subject: [PATCH] Flymake checks file names before considering diagnostics The error patterns for gcc picked up errors for the Makefile itself, for example. These shouldn't count as actual errors. * lisp/progmodes/flymake.el (flymake-report): Check matching file names. --- lisp/progmodes/flymake.el | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el index f9aa098071b..827bce4b634 100644 --- a/lisp/progmodes/flymake.el +++ b/lisp/progmodes/flymake.el @@ -451,6 +451,14 @@ return DEFAULT." (save-restriction (widen) (flymake-delete-own-overlays) + (setq diagnostics + (cl-remove-if-not + (lambda (diag) + (let ((ff (flymake--diag-full-file diag))) + (and ff + (equal (expand-file-name ff) + (expand-file-name (buffer-file-name)))))) + diagnostics)) (mapc #'flymake--fix-line-numbers diagnostics) (mapc #'flymake--highlight-line diagnostics) (let ((err-count (cl-count-if #'flymake--diag-errorp diagnostics)) -- 2.39.5