Adapt compile.el to changes in MSVC diagnostics format.

lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
 Adjust the msft regexp to the output of Studio 2010, and move msft
 before edg-1.  See the discussion on emacs-devel,
 http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00579.html,
 for the details.

 etc/compilation.txt (msft): Add error messages in new Studio 2010
 format.

 test/automated/compile-tests.el (compile-tests--test-regexps-data):
 Add data for msft's new format.
This commit is contained in:
Eli Zaretskii 2012-10-14 09:40:05 +02:00
parent 9760c73c66
commit 8111f5e6f0
6 changed files with 38 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2012-10-14 Eli Zaretskii <eliz@gnu.org>
* compilation.txt (msft): Add error messages in new Studio 2010
format.
2012-10-11 Kenichi Handa <handa@gnu.org>
* charsets/CNS-2.map, charsets/CNS-3.map, charsets/CNS-4.map,

View file

@ -308,6 +308,13 @@ made it more strict about the error message that follows.
keyboard handler.c(537) : warning C4005: 'min' : macro redefinition
d:\tmp\test.c(23) : error C2143: syntax error : missing ';' before 'if'
d:\tmp\test.c(1145) : see declaration of 'nsRefPtr'
1>test_main.cpp(29): error C2144: syntax error : 'int' should be preceded by ';'
1>test_main.cpp(29): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:01.46
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
* Open Watcom

View file

@ -1,3 +1,11 @@
2012-10-14 Eli Zaretskii <eliz@gnu.org>
* progmodes/compile.el (compilation-error-regexp-alist-alist):
Adjust the msft regexp to the output of Studio 2010, and move msft
before edg-1. See the discussion on emacs-devel,
http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00579.html,
for the details.
2012-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/eieio.el (eieio-oset-default, eieio-oset, oset-default)

View file

@ -171,6 +171,15 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1))
"\\(?:^cucumber\\(?: -p [^[:space:]]+\\)?\\|#\\)\
\\(?: \\)\\([^\(].*\\):\\([1-9][0-9]*\\)" 1 2)
(msft
;; Must be before edg-1, so that MSVC's longer messages are
;; considered before EDG.
;; The message may be a "warning", "error", or "fatal error" with
;; an error code, or "see declaration of" without an error code.
"^ *\\([0-9]+>\\)?\\(\\(?:[a-zA-Z]:\\)?[^:(\t\n]+\\)(\\([0-9]+\\)) ?\
: \\(?:see declaration\\|\\(?:warnin\\(g\\)\\|[a-z ]+\\) C[0-9]+:\\)"
2 3 nil (4))
(edg-1
"^\\([^ \n]+\\)(\\([0-9]+\\)): \\(?:error\\|warnin\\(g\\)\\|remar\\(k\\)\\)"
1 2 nil (3 . 4))

View file

@ -1,3 +1,8 @@
2012-10-14 Eli Zaretskii <eliz@gnu.org>
* automated/compile-tests.el (compile-tests--test-regexps-data):
Add new data for msft's new format.
2012-09-08 Dmitry Gutov <dgutov@yandex.ru>
* automated/ruby-mode-tests.el:

View file

@ -215,6 +215,10 @@
1 nil 23 "d:\\tmp\\test.c")
("d:\\tmp\\test.c(1145) : see declaration of 'nsRefPtr'"
1 nil 1145 "d:\\tmp\\test.c")
("1>test_main.cpp(29): error C2144: syntax error : 'int' should be preceded by ';'"
3 nil 29 "test_main.cpp")
("1>test_main.cpp(29): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int"
3 nil 29 "test_main.cpp")
;; watcom
("..\src\ctrl\lister.c(109): Error! E1009: Expecting ';' but found '{'"
1 nil 109 "..\src\ctrl\lister.c")