控制诊断消息的输出
有几个选项可控制诊断消息的输出:
-
启用或禁用使用短格式诊断输出的模式。 启用时不显示原始源语句行,并且当错误消息文本太长、一行放不下时也不换行。缺省为
--no_brief_diagnostics
。 -
指定用于显示诊断消息的样式:
-
使用 ARM 汇编器样式显示消息。 如果未指定
--diag_style
,则这是缺省设置。 -
包括发生错误的行的行号和字符计数。这些值将显示在括号中。
-
采用 GNU 样式显示消息。
arm
ide
gnu
选择
--diag_style=ide
选项会隐式选择--brief_diagnostics
选项。在命令行中显式选择--no_brief_diagnostics
会覆盖--diag_style=ide
隐式选择的--brief_diagnostics
。选择
--diag_style=arm
选项或--diag_style=gnu
选项不会隐式选择任何--brief_diagnostics
。 -
-
将具有指定标记的诊断消息的严重性设置为错误(请参阅Table 3.1)。
-
将具有指定标记的诊断消息的严重性设置为备注(请参阅Table 3.1)。
-
将具有指定标记的诊断消息的严重性设置为警告(请参阅Table 3.1)。
-
禁用具有指定标记的诊断消息。
-
可使来自不同体系结构的指令无错误地进行汇编。它将相应的错误消息改为警告消息, 同时也禁止有关运算符优先级的警告(请参阅二元运算符)。
--brief_diagnostics
--diag_style {arm|ide|gnu}
--diag_error tag
{,tag
,…}
--diag_remark tag
{,tag
,…}
--diag_warning tag
{,tag
,…}
--diag_suppress tag
{,tag
,…}
--unsafe
四个 --diag_
选项都需要
,即要禁止的消息的编号。可以指定多个标记。 例如,要禁止显示编号为 tag
1293
和 187
的警告消息,请使用以下命令:
armasm --diag_suppress 1293,187 ...
汇编器前缀 A
可与 --diag_error
、--diag_remark
和 --diag_warning
一起使用,或在禁止消息时使用,例如:
armasm --diag_suppress A1293,A187 ...
诊断消息可以直接剪切并粘贴到命令行中。 使用前缀字母是可选的。 但是,如果已包括前缀字母,则它必须与 armasm 标识字母匹配。如果发现其他前缀,则汇编器将会忽略该消息编号。
Table 3.1 解释了在选项说明中使用的术语严重性 的含义。
Table 3.1. 诊断消息的严重性
严重性 | 说明 |
---|---|
灾难性错误 | 灾难性错误指示导致汇编终止的问题。 这些错误包括命令行错误、内部错误以及丢失包含文件。 |
错误 | 错误指示违反了汇编语言的语法和语义规则。 继续汇编,但不生成对象代码。 |
警告 | 警告指示代码中存在异常情况,可能有问题。 继续汇编,除非检测到具有“错误”严重性的问题,否则将生成对象代码。 |
备注 | 备注指示常见但不推荐的汇编语言用法。 缺省情况下不发出这些诊断消息。 继续汇编,除非检测到具有“错误”严重性的问题,否则将生成对象代码。 |