It might be any number of the regexp that make up the
One idea would be to place a
compilation-parse-errors after both of the
(while (re-search-forward pat end t) (message "pat: %s" pat) ... Add additional messages as needed.
A second idea would be to create a similar
dolist loop and search through the finished output to determine applicable matches, and perhaps get a little fancy and stop at each match with a yes/no proceed so that things happen in slow-motion.
A third idea would be to use each individual regexp and open up
M-x re-builder and try the different regexp on the finished output until you find a match.
A fourth idea would be to add a text-property with the applicable regexp at each location as
compilation-parse-errors does its thing --
pat is the regexp used per
while loop. See these with
C-u C-x = and/or
(text-properties-at (point)). E.g., at both locations,
(while (re-search-forward pat end t) (compilation--put-prop file 'regexp pat) ... will add the regexp to the text-properties placed on the filename. In the
*Help* buffer of
C-u C-x = (on the filename), click on the regexp [show] option -- or, at point on the filename, evaluate
(text-properties-at (point)) and look at the result in the
*Messages* buffer. [If it gets truncated, you may need to set a variable to see the full value.... beyond the scope of this question/answer.]