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