bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#416: flymake highlights errors from wrong file


From: Nikolaj Schumacher
Subject: bug#416: flymake highlights errors from wrong file
Date: Sun, 15 Jun 2008 18:27:37 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (darwin)

Hello.

flymake will highlight errors in the current buffer, even if the error
comes from a different file.

This can be noted, for example, when using

>  check-syntax:
>          gcc -Wall -Wextra -fsyntax-only *.cpp

instead of the more common

>  check-syntax:
>          gcc -Wall -Wextra -pedantic -fsyntax-only -S $(CHK_SOURCES)

in the Makefile.

It also happens when using ant, where it can't be avoided.


The attached patch filters out these errors when parsing.
Alternatively, they could be filtered out when highlighting.


regards,
Nikolaj Schumacher

diff -du 
/Users/nik/emacs/var/backup/\!Applications\!Emacs.app\!Contents\!Resources\!share\!emacs\!22.2\!lisp\!progmodes\!flymake.el.\~2\~
 
/Applications/Emacs.app/Contents/Resources/share/emacs/22.2/lisp/progmodes/flymake.el
--- lisp/progmodes/flymake.el   2008-06-02 23:30:29.000000000 +0200
+++ lisp/progmodes/flymake.el   2008-06-05 23:30:08.000000000 +0200
@@ -866,11 +867,10 @@
                                       (flymake-ler-file line-err-info)))
        (setq line-err-info (flymake-ler-set-full-file line-err-info 
real-file-name))
 
-       (if (flymake-same-files real-file-name source-file-name)
-           (setq line-err-info (flymake-ler-set-file line-err-info nil))
-         (setq line-err-info (flymake-ler-set-file line-err-info 
(file-name-nondirectory real-file-name))))
+       (when (flymake-same-files real-file-name source-file-name)
+         (setq line-err-info (flymake-ler-set-file line-err-info nil))
+         (setq err-info-list (flymake-add-err-info err-info-list 
line-err-info))))
 
-       (setq err-info-list (flymake-add-err-info err-info-list line-err-info)))
       (flymake-log 3 "parsed '%s', %s line-err-info" (nth idx lines) (if 
line-err-info "got" "no"))
       (setq idx (1+ idx)))
     err-info-list))

Diff finished.  Thu Jun  5 23:30:18 2008

reply via email to

[Prev in Thread] Current Thread [Next in Thread]