Subject: [PATCH] Support GNU make error messages in compile mode.

From: Paul Eggert <[email-masked]>
Date: Mon, 23 Sep 2019 15:29:05 -0700

Thanks, but when I tried that patch against GNU Emacs master, 'make 
check' failed with the diagnostics at the end of this email. Could you 
please look into that? Also, please note the following comment in 
compile.el, which may be an easier way for you to run the tests:

;; If you make any changes to `compilation-error-regexp-alist-alist',
;; be sure to run the ERT test in test/lisp/progmodes/compile-tests.el.
;; emacs -batch -l compile-tests.el -f ert-run-tests-batch-and-exit

Test compile-test-error-regexps backtrace:
   signal(ert-test-failed (((should msg) :form msg :value nil)))
   ert-fail(((should msg) :form msg :value nil))
   compile--test-error-line(("make: *** [Makefile:20: all] Error 2" 5 n
   mapc(compile--test-error-line (("Error on line 3 of t.f: Execution e
   #f(compiled-function () #<bytecode 0x5ef685>)()
   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
   ert-run-test(#s(ert-test :name compile-test-error-regexps :documenta
   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
   ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
   ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
   ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
   eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
   command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/compile-te
   command-line()
   normal-top-level()
Test compile-test-error-regexps condition:
     (ert-test-failed
      ((should msg)
       :form msg :value nil))
    FAILED  1/2  compile-test-error-regexps (0.062248 sec)