as
may write warnings and error messages to the standard error
file (usually your terminal). This should not happen when a compiler
runs as
automatically. Warnings report an assumption made so
that as
could keep assembling a flawed program; errors report a
grave problem that stops the assembly.
Warning messages have the format
file_name:NNN:Warning Message Text
(where NNN is a line number). If both a logical file name
(see .file
) and a logical line number
(see .line
)
have been given then they will be used, otherwise the file name and line number
in the current assembler source file will be used. The message text is
intended to be self explanatory (in the grand Unix tradition).
Note the file name must be set via the logical version of the .file
directive, not the DWARF2 version of the .file
directive. For example:
.file 2 "bar.c" error_assembler_source .file "foo.c" .line 30 error_c_source
produces this output:
Assembler messages: asm.s:2: Error: no such instruction: `error_assembler_source' foo.c:31: Error: no such instruction: `error_c_source'
Error messages have the format
file_name:NNN:FATAL:Error Message Text
The file name and line number are derived as for warning messages. The actual message text may be rather less explanatory because many of them aren’t supposed to happen.