Mercurial > emacs
annotate etc/compilation.txt @ 59061:a7985894de81
Comment change.
| author | Richard M. Stallman <rms@gnu.org> |
|---|---|
| date | Tue, 21 Dec 2004 11:50:52 +0000 |
| parents | f81ffb9e961b |
| children | 6dfecf2a19ab f2ebccfa87d4 |
| rev | line source |
|---|---|
| 54365 | 1 * Introduction -*-compilation-*- |
| 2 | |
| 3 This shows the different kinds of messages compile recognizes by default and | |
| 4 how they are rendered. It is intended both to help you decide which matchers | |
| 5 you need and as a test of the matchers. Move the mouse over a colored part or | |
| 6 use `compilation-message-face', to see how much text was actually matched. | |
| 7 | |
| 8 The important part is the symbol(s) line at the beginning of each entry. | |
| 9 These are the symbols you can customize `compilation-error-regexp-alist' for, | |
| 10 to match the messages shown in that entry. A few complex cases have more than | |
| 11 one symbol, which should be selected together. | |
| 12 | |
| 13 | |
| 14 * Absoft FORTRAN 77 Compiler 3.1.3 | |
| 15 | |
| 16 symbol: absoft | |
| 17 | |
| 18 Error on line 3 of t.f: Execution error unclassifiable statement | |
| 19 Line 45 of "foo.c": bloofle undefined | |
| 20 error on line 19 of fplot.f: spelling error? | |
| 21 warning on line 17 of fplot.f: data type is undefined for variable d | |
| 22 | |
| 23 | |
| 24 * Ada & Mpatrol (memory leak debugger) | |
| 25 | |
| 26 symbol: ada | |
| 27 | |
| 28 This matches only the end of line, the beginning is covered by GNU style. | |
| 29 | |
| 30 foo.adb:61:11: [...] in call to size declared at foo.ads:11 | |
| 31 0x8008621 main+16 at error.c:17 | |
| 32 | |
| 33 | |
| 34 * IBM AIX PS/2 C version 1.1 | |
| 35 | |
| 36 symbol: aix | |
| 37 | |
| 38 ****** Error number 140 in line 8 of file errors.c ****** | |
| 39 | |
| 40 | |
| 41 * Ant Java: works at least for jikes and javac | |
| 42 | |
| 43 symbol: ant | |
| 44 | |
| 45 The regexps found on http://ant.apache.org/faq.html, and since integrated in | |
| 46 both Emacsen, were hairy. Why so many numbers for jikes -- is one a column | |
| 47 number? | |
| 48 | |
| 49 [javac] /src/DataBaseTestCase.java:27: unreported exception ... | |
| 50 [javac] /src/DataBaseTestCase.java:49: warning: finally clause cannot complete normally | |
| 51 [jikes] foo.java:3:5:7:9: blah blah | |
| 52 | |
| 53 | |
| 54 * Bash v2 | |
| 55 | |
| 56 symbol: bash | |
| 57 | |
| 58 a.sh: line 1: ls-l: command not found | |
| 59 | |
| 60 | |
| 61 * Borland C++, C++Builder | |
| 62 | |
| 63 symbol: borland | |
| 64 | |
| 65 Error ping.c 15: Unable to open include file 'sys/types.h' | |
| 66 Warning ping.c 68: Call to function 'func' with no prototype | |
| 67 Error E2010 ping.c 15: Unable to open include file 'sys/types.h' | |
| 68 Warning W1022 ping.c 68: Call to function 'func' with no prototype | |
| 69 | |
| 70 | |
| 71 * Caml & Python | |
| 72 | |
| 73 symbol: caml | |
| 74 | |
| 75 File "foobar.ml", lines 5-8, characters 20-155: blah blah | |
| 76 File "F:\ocaml\sorting.ml", line 65, characters 2-145: | |
| 77 Warning: this expression should have type unit. | |
| 78 File "/usr/share/gdesklets/display/TargetGauge.py", line 41, in add_children | |
|
54744
a88e6b97afe3
Fix caml (Python) & irix (Info)
Daniel Pfeiffer <occitan@esperanto.org>
parents:
54365
diff
changeset
|
79 File \lib\python\Products\PythonScripts\PythonScript.py, line 302, in _exec |
|
a88e6b97afe3
Fix caml (Python) & irix (Info)
Daniel Pfeiffer <occitan@esperanto.org>
parents:
54365
diff
changeset
|
80 File "/tmp/foo.py", line 10 |
| 54365 | 81 |
| 82 | |
| 83 * Apollo cc, 4.3BSD fc & IBM RS6000/AIX xlc compiler & Microtec mcc68k & GNAT (July 94) | |
| 84 | |
| 85 symbol: comma | |
| 86 | |
| 87 "foo.f", line 3: Error: syntax error near end of statement | |
| 88 "vvouch.c", line 19.5: 1506-046 (S) Syntax error. | |
| 89 "foo.c", line 32 pos 1; (E) syntax error; unexpected symbol: "lossage" | |
| 90 "foo.adb", line 2(11): warning: file name does not match ... | |
| 91 "src/swapping.c", line 30.34: 1506-342 (W) "/*" detected in comment. | |
| 92 | |
| 93 | |
|
55516
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
94 * EDG C/C++ |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
95 |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
96 symbol: edg-1 edg-2 |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
97 |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
98 build/intel/debug/../../../struct.cpp(42): error: identifier "foo" is undefined |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
99 build/intel/debug/../../../struct.cpp(44): warning #1011: missing return statement at end of ... |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
100 build/intel/debug/../../../iptr.h(302): remark #981: operands are evaluated in unspecified order |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
101 detected during ... at line 62 of "build/intel/debug/../../../trace.h" |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
102 |
|
d43c6081f39c
Add edg examples and remove redundant ultrix examples.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55133
diff
changeset
|
103 |
| 54365 | 104 * EPC F90 compiler |
| 105 | |
| 106 symbol: epc | |
| 107 | |
| 108 Error 24 at (2:progran.f90) : syntax error | |
| 109 | |
| 110 | |
|
57730
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
111 * Fortran checker |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
112 |
|
58437
f81ffb9e961b
ftnchek only current style messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
57732
diff
changeset
|
113 symbols: ftnchek |
|
57730
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
114 |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
115 Dummy arg W in module SUBA line 8 file arrayclash.f is array |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
116 L4 used at line 55 file test/assign.f; never set |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
117 Warning near line 10 file arrayclash.f: Module contains no executable |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
118 Nonportable usage near line 31 col 9 file assign.f: mixed default and explicit |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
119 |
|
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
120 |
| 54365 | 121 * IAR Systems C Compiler |
| 122 | |
| 123 symbol: iar | |
| 124 | |
| 125 "foo.c",3 Error[32]: Error message | |
| 126 "foo.c",3 Warning[32]: Error message | |
| 127 | |
| 128 | |
| 129 * IBM C/C++ Tools 2.01 | |
| 130 | |
| 131 symbol: ibm | |
| 132 | |
| 133 foo.c(2:0) : informational EDC0804: Function foo is not referenced. | |
| 134 foo.c(3:8) : warning EDC0833: Implicit return statement encountered. | |
| 135 foo.c(5:5) : error EDC0350: Syntax error. | |
| 136 | |
| 137 | |
|
57730
c173d0dac457
extend irix for NAG Fortran and add ftnchek-*
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55991
diff
changeset
|
138 * Ultrix MIPS RISC CC, DEC AXP OSF/1 cc, IRIX 5.2 & NAG Fortran |
| 54365 | 139 |
| 140 symbol: irix | |
| 141 | |
| 142 ccom: Error: foo.c, line 2: syntax error | |
|
55133
77a1309e787d
added irix/Compaq C severe example
Daniel Pfeiffer <occitan@esperanto.org>
parents:
54744
diff
changeset
|
143 cc: Severe: /src/Python-2.3.3/Modules/_curses_panel.c, line 17: Cannot find file <panel.h> ... |
|
54744
a88e6b97afe3
Fix caml (Python) & irix (Info)
Daniel Pfeiffer <occitan@esperanto.org>
parents:
54365
diff
changeset
|
144 cc: Info: foo.c, line 27: ... |
| 54365 | 145 cfe: Warning 712: foo.c, line 2: illegal combination of pointer and ... |
| 146 cfe: Warning 600: xfe.c: 170: Not in a conditional directive while ... | |
| 147 /usr/lib/cmplrs/cc/cfe: Error: foo.c: 1: blah blah | |
| 148 /usr/lib/cmplrs/cc/cfe: warning: foo.c: 1: blah blah | |
|
57732
828726b6503b
*** empty log message ***
Daniel Pfeiffer <occitan@esperanto.org>
parents:
57730
diff
changeset
|
149 foo bar: baz.f, line 27: ... |
| 54365 | 150 |
| 151 | |
| 152 * Java Exception & Valgrind (memory debugger for x86 GNU/Linux) | |
| 153 | |
| 154 symbol: java | |
| 155 | |
| 156 Register 6 contains wrong type | |
| 157 at org.foo.ComponentGateway.doGet(ComponentGateway.java:172) | |
| 158 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) | |
| 159 ==1332== Invalid write of size 1 | |
| 160 ==1332== at 0x4040743C: System::getErrorString() (../src/Lib/System.cpp:217) | |
| 161 ==1332== by 0x8008621: main (vtest.c:180) | |
| 162 | |
| 163 | |
| 164 * IBM jikes | |
| 165 | |
| 166 symbols: jikes-file jikes-line | |
| 167 | |
| 168 Jikes separates file names from the actual error messages. For visual | |
| 169 feedback the underline and the word "Error" on the 3rd line is fontified like | |
| 170 a file name would be. | |
| 171 | |
| 172 Found 2 semantic errors compiling "../javax/swing/BorderFactory.java": | |
| 173 | |
| 174 150. case '{': | |
| 175 <-> | |
| 176 *** Error: The type of this expression, "char", is not ... | |
| 177 | |
| 178 312. return new CompoundBorder(outside, inside); | |
| 179 <---------------------------------> | |
| 180 *** Error: No match was found for constructor ... | |
| 181 | |
| 182 Issued 1 semantic warning compiling "java/awt/Toolkit.java": | |
| 183 | |
| 184 504. void imgProduceImage( ImageNativeProducer prod, Ptr imgData); | |
| 185 <-----------------> | |
| 186 *** Warning: The type "ImageNativeProducer" is defined ... | |
| 187 | |
| 188 | |
| 189 * GCC include message | |
| 190 | |
| 191 symbol: gcc-include | |
| 192 | |
| 193 The last file, i.e. the one you are compiling, is the interesting one. | |
| 194 | |
| 195 In file included from /usr/include/c++/3.3/backward/warn.h:4, | |
| 196 from /usr/include/c++/3.3/backward/iostream.h:31, | |
| 197 from test_clt.cc:1: | |
| 198 | |
| 199 | |
| 200 * GNU style | |
| 201 | |
| 202 symbol: gnu | |
| 203 | |
| 204 foo.c:8: message | |
| 205 ../foo.c:8: W: message | |
| 206 /tmp/foo.c:8:warning message | |
| 207 foo/bar.py:8: FutureWarning message | |
| 208 foo.py:8: RuntimeWarning message | |
| 209 foo.c:8:I: message | |
| 210 foo.c:8.23: info: message | |
| 211 foo.c:8:23:information: message | |
| 212 foo.c:8.23-45: Informational: message | |
| 213 foo.c:8-23: message | |
| 214 foo.c:8-45.3: message | |
| 215 foo.c:8.23-9.1: message | |
| 216 jade:dbcommon.dsl:133:17:E: missing argument for function call | |
| 217 G:/cygwin/dev/build-myproj.xml:54: Compiler Adapter 'javac' can't be found. | |
| 218 file:G:/cygwin/dev/build-myproj.xml:54: Compiler Adapter 'javac' can't be found. | |
|
55991
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
219 {standard input}:27041: Warning: end of file not at end of a line; newline inserted |
| 54365 | 220 |
| 221 | |
| 222 * Lucid Compiler, lcc 3.x | |
| 223 | |
| 224 symbol: lcc | |
| 225 | |
| 226 E, file.cc(35,52) Illegal operation on pointers | |
| 227 W, file.cc(36,52) blah blah | |
| 228 | |
| 229 | |
| 230 * makepp 1.20 | |
| 231 | |
| 232 symbol: makepp | |
| 233 | |
| 234 makepp: Scanning `/foo/bar.c' | |
| 235 makepp: warning: bla bla `/foo/bar.c' and `/foo/bar.h' | |
| 236 makepp: bla bla `/foo/Makeppfile:12' bla | |
| 237 makepp: bla bla `/foo/bar.c' and `/foo/bar.h' | |
| 238 | |
| 239 | |
| 240 * MIPS lint; looks good for SunPro lint also | |
| 241 | |
| 242 symbols: mips-1 mips-2 | |
| 243 | |
| 244 This can match multiple times on a line. | |
| 245 | |
| 246 TrimMask (255) in solomon.c may be indistinguishable from TrimMasks (93) in solomon.c due to truncation | |
| 247 name defined but never used: LinInt in cmap_calc.c(199) | |
| 248 | |
| 249 | |
| 250 * Microsoft C/C++ | |
| 251 | |
| 252 symbol: msft | |
| 253 | |
| 254 This used to be less selective and allowed characters other than parens around | |
| 255 the line number, but that caused confusion for GNU-style error messages. This | |
| 256 used to reject spaces and dashes in file names, but they are valid now; so I | |
| 257 made it more strict about the error message that follows. | |
| 258 | |
| 259 keyboard handler.c(537) : warning C4005: 'min' : macro redefinition | |
| 260 d:\tmp\test.c(23) : error C2143: syntax error : missing ';' before 'if' | |
| 261 | |
| 262 | |
| 263 * Oracle pro*c | |
| 264 | |
| 265 symbol: oracle | |
| 266 | |
|
55991
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
267 This stupid precompiler wraps lines at column 80 in the middle of a file name. |
|
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
268 There is no obvious way of detecting this or turning it off. But if you |
|
58437
f81ffb9e961b
ftnchek only current style messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
57732
diff
changeset
|
269 delete the newline (probably needs M-x toggle-read-only), the file name will |
|
f81ffb9e961b
ftnchek only current style messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
57732
diff
changeset
|
270 automatically be reparsed, so that you can then go there. |
|
55991
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
271 |
| 54365 | 272 Semantic error at line 528, column 5, file erosacqdb.pc: |
|
55991
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
273 Error at line 41, column 10 in file /usr/src/sb/ODBI_BHP.hpp |
|
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
274 PCC-02150: error at line 49, column 27 in file /usr/src/sb/ODBI_dxfgh.pc |
|
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
275 PCC-00003: invalid SQL Identifier at column name in line 12 of file /usr/src/sb/ODBI_BHP.hpp |
|
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
276 PCC-00004: mismatched IF/ELSE/ENDIF block at line 27 in file /usr/src/sb/ODBI_BHP.hpp |
|
60906ddcbf22
show example of GNU {standard input} (gcc --pipe) and various Oracle messages
Daniel Pfeiffer <occitan@esperanto.org>
parents:
55516
diff
changeset
|
277 PCC-02151: line 21 column 40 file /usr/src/sb/ODBI_BHP.hpp: |
| 54365 | 278 |
| 279 | |
| 280 * Perl | |
| 281 | |
| 282 symbol: perl | |
| 283 | |
| 284 syntax error at automake line 922, near "':'" | |
| 285 Died at test.pl line 27. | |
| 286 store::odrecall('File_A', 'x2') called at store.pm line 90 | |
| 287 | |
| 288 | |
| 289 * RXP | |
| 290 | |
| 291 symbol: rxp | |
| 292 | |
| 293 GPL XML validator at http://www.cogsci.ed.ac.uk/~richard/rxp.html | |
| 294 | |
| 295 Error: Mismatched end tag: expected </geroup>, got </group> | |
| 296 in unnamed entity at line 71 char 8 of file:///home/reto/test/group.xml | |
| 297 Warning: Start tag for undeclared element geroup | |
| 298 in unnamed entity at line 4 char 8 of file:///home/reto/test/group.xml | |
| 299 | |
| 300 | |
| 301 * Sparc Pascal | |
| 302 | |
| 303 symbols: sparc-pascal-file sparc-pascal-line sparc-pascal-example | |
| 304 | |
| 305 These messages don't contain a file name. Instead the compiler gives a | |
| 306 message whenever the file being compiled is changed. For visual feedback the | |
| 307 error code is fontified like a file name would be. | |
| 308 | |
| 309 Thu May 14 10:46:12 1992 mom3.p: | |
| 310 20 linjer : array[1..4] of linje; | |
| 311 w 18480-----------^--- Inserted ';' | |
| 312 20 linjer : array[1..4] of linje; | |
| 313 e 18480-----------^--- Inserted ';' | |
| 314 w 18520 line 61 - 0 is undefined | |
| 315 E 18520 line 61 - 0 is undefined | |
| 316 | |
| 317 | |
| 318 * SGI IRIX MipsPro 7.3 & Sun F90 & Cray C | |
| 319 | |
| 320 symbol: sun | |
| 321 | |
| 322 cc-1020 CC: REMARK File = CUI_App.h, Line = 735 | |
| 323 cc-1070 cc: WARNING File = linkl.c, Line = 38 | |
| 324 cf90-113 f90comp: ERROR NSE, File = Hoved.f90, Line = 16, Column = 3 | |
| 325 | |
| 326 | |
| 327 * Sun Ada (VADS, Solaris) | |
| 328 | |
| 329 symbol: sun-ada | |
| 330 | |
| 331 /home3/xdhar/rcds_rc/main.a, line 361, char 6:syntax error: "," inserted | |
| 332 | |
| 333 | |
| 334 * 4.3BSD grep, cc, lint | |
| 335 | |
| 336 symbol: 4bsd | |
| 337 | |
| 338 /usr/src/foo/foo.c(8): warning: w may be used before set | |
| 339 /usr/src/foo/foo.c(9): error: w is used before set | |
| 340 strcmp: variable # of args. llib-lc(359) :: /usr/src/foo/foo.c(8) | |
| 341 bloofle defined( /users/wolfgang/foo.c(4) ), but never used | |
| 342 | |
| 343 | |
| 344 * Directory tracking | |
| 345 | |
| 346 Directories are matched via `compilation-directory-matcher'. Files which are | |
| 347 not shown as full paths are searched for relative to the directory where the | |
| 348 message was issued. | |
| 349 | |
| 350 Entering directory `/a/b/c' | |
| 351 Leaving directory `/a/b/c' | |
| 352 gmake[2]: Entering directory `/a/b/c' | |
| 353 makepp: Leaving directory `/a/b/c' | |
| 354 | |
| 355 | |
| 356 * Miscellaneous | |
| 357 | |
| 358 These are not messages that can be gone to. They are only highlighted via | |
| 359 `compilation-mode-font-lock-keywords' to recognize some useful information at | |
| 360 a glance. | |
| 361 | |
| 362 checking dynamic linker characteristics... GNU/Linux ld.so | |
| 363 checking if libtool supports shared libraries... yes | |
| 364 checking whether to build shared libraries... yes | |
| 365 checking whether -lc should be explicitly linked in... (cached) no | |
| 366 checking For GLIB - version >= 2.0.0... yes (version 2.1.0) | |
| 367 checking FONTCONFIG_CFLAGS... | |
| 368 g++ -o foo.o foo.cc | |
| 369 tool1 -output=foo foo.x | |
| 370 tool2 --outfile foo foo.y |
