unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: joaotavora@gmail.com (João Távora)
To: Dave Abrahams <dave@boostpro.com>
Cc: 24623@debbugs.gnu.org
Subject: bug#24623: 25.1; Flymake turns off if check command fails without reporting errors in the file being edited
Date: Fri, 03 Nov 2017 11:51:23 +0000	[thread overview]
Message-ID: <877ev7vav8.fsf@gmail.com> (raw)
In-Reply-To: <m2shsad1c8.fsf@boostpro.com> (Dave Abrahams's message of "Tue, 04 Oct 2016 10:47:32 -0700")

Dave Abrahams <dave@boostpro.com> writes:

> In these lines from flymake-post-syntax-check:
>
>       (if (and (equal 0 err-count) (equal 0 warn-count))
>           (if (equal 0 exit-status)
>               (flymake-report-status "" "") ; PASSED
>             (if (not flymake-check-was-interrupted)
>                 (flymake-report-fatal-status "CFGERR"
>                                              (format "Configuration error has occurred while running %s" command))
>               (flymake-report-status nil ""))) ; "STOPPED"
>         (flymake-report-status (format "%d/%d" err-count warn-count) "")))))
>
> err-count and warn-count are the count of errors detected *in the file
> being edited*.  My syntax check command must consider a whole batch of
> files at once, and sometimes those other files have errors in them.
> That should not disable syntax checking in the current file, but flymake
> has this behavior unconditionally, and there's no way to turn it off.

[Eli, I’m CC’ing you since I think this bug can be marked "wontfix" or
equivalent]

Hello Dave and sorry for the extremely late reply to this bug.

This is easy to reproduce with GCC as a checker tool when checking a .h
file with no errors but included by a .c file with some errors.

I just wanted to note, if you haven’t noticed already, that Flymake has
been redesigned in the upcoming Emacs 26 and the functionality you refer
to is now considered obsolete.

Nevertheless, it is still supported and lives in a so called "legacy
backend". Your particular problem also popped up for me testing. My
solution would be to invoke your syntax checker tool in a way that the
invocation univocally returns 0, like having this in a Makefile:

syntax-check:
	mytool $(CHK_SOURCES) || true

But there are new much better ways to configure Flymake with your syntax
checker. They are described in the Flymake Info manual, which also
broadly describes the redesign effort). You can read this manual with
M-x info in the upcoming Emacs version (or one of the already available
pretests thereof).

Given the workaround, I don’t there’s much reason to fix this.

João






  reply	other threads:[~2017-11-03 11:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-04 17:47 bug#24623: 25.1; Flymake turns off if check command fails without reporting errors in the file being edited Dave Abrahams
2017-11-03 11:51 ` João Távora [this message]
2017-11-03 13:21   ` Eli Zaretskii
2017-11-04 17:41   ` Dave Abrahams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877ev7vav8.fsf@gmail.com \
    --to=joaotavora@gmail.com \
    --cc=24623@debbugs.gnu.org \
    --cc=dave@boostpro.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).