It might be any number of the regexp that make up the compilation-error-regexp-alist.
One idea would be to place a message in compilation-parse-errors after both of the while loops: (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 while/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.]