On 11 Sep 2017 15:54, "Eli Zaretskii" wrote: > From: Richard Copley > Date: Sun, 10 Sep 2017 23:41:45 +0100 > Cc: Tom Tromey , 28349@debbugs.gnu.org > > This is the backtrace when string-match sets the match data to (0 3): So you are saying the problem is in the call to string-match? Or does some code clobber match-data between that call and when the data is used? The call to string-match clobbers the correct match data, which was obtained just before by re-search-forward, in compilation-parse-errors. FYI this is not new and not related to Tom's change as far as I can see. In compilation-parse-errors (compile.el:1426) (upcase comments added): [...] (goto-char start) (while (re-search-forward pat end t) ;; SET MATCH-DATA (when (setq props (compilation-error-properties ;; CLOBBER IT file line end-line col end-col (or type 2) fmt)) [...] ;; USE IT