[gnu.emacs.bug] compilation-error-regexp in compile.el

taylor@THINK.COM (David Taylor) (01/13/90)

In GNU Emacs 18.49.18 of Wed Oct 28 1987 on odin.think.com (berkeley-unix),
I discovered that compilation-error-regexp in compile.el contains, in
part,

	\\([0-9]+.*of *[^ \n]+\\)

The `of' matches both the word `of' anywhere and also as the last two
characters of a word.  It seems like it should only be matching the word
`of' immediately after a number...

As in something like:

	line 27 of fubar.c

Unfortunately, it also matches `of' in things like:

../lib/file_descriptor.c(167): illegal lhs of assignment operator
../lib/file_descriptor.c(167): warning: illegal combination of pointer and integer, op =

from lint.  Is there anything wrong with changing it to instead be
something like:

	\\([0-9]+[ \t]+of *[^ \n]+\\)

That is, to require that there be white space and only white space
between the number and the `of' in order for it to match?

Anyway, the original caused compilation-parse-errors to die with a
syntax error when trying to parse lint output and the new version seems
to work fine.  What program generates error/warning messages that the
original pattern above is supposed to match?

David