(compilation-error-regexp-alist-alist) <gnu>:
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 30 Apr 2008 08:12:20 +0000 (08:12 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Wed, 30 Apr 2008 08:12:20 +0000 (08:12 +0000)
Rule out trailing spaces in file and directory names as well.

lisp/ChangeLog
lisp/progmodes/compile.el

index a82d31d..d7d58bd 100644 (file)
@@ -16,6 +16,9 @@
 
 2008-04-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * progmodes/compile.el (compilation-error-regexp-alist-alist) <gnu>:
+       Rule out trailing spaces in file and directory names as well.
+
        * minibuffer.el (completion--do-completion): Move point even if the
        completion makes no change.
        (completion-pcm-try-completion): Fix computation of new point.
index 455a6ae..2f5f329 100644 (file)
@@ -237,8 +237,13 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1))
      ;; times of the form "HH:MM:SS" where MM is taken as a line number, so
      ;; the last line tries to rule out message where the info after the
      ;; line number starts with "SS".  --Stef
+
+     ;; The core of the regexp is the one with *?.  It says that a file name
+     ;; can be composed of any non-newline char, but it also rules out some
+     ;; valid but unlikely cases, such as a trailing space or a space
+     ;; followed by a -.
      "^\\(?:[[:alpha:]][-[:alnum:].]+: ?\\)?\
-\\([0-9]*[^0-9\n]\\(?:[^\n ]\\| [^-\n]\\)*?\\): ?\
+\\([0-9]*[^0-9\n]\\(?:[^\n ]\\| [^-/\n]\\)*?\\): ?\
 \\([0-9]+\\)\\(?:\\([.:]\\)\\([0-9]+\\)\\)?\
 \\(?:-\\([0-9]+\\)?\\(?:\\3\\([0-9]+\\)\\)?\\)?:\
 \\(?: *\\(\\(?:Future\\|Runtime\\)?[Ww]arning\\|W:\\)\\|\