Skip to content

编译器选项:-w


设置最低警告级别。

语法

-w level | all | none | param | escape | pedantic | next | funcptr | constness | suffix | error | upcast

参数

level

只输出级别等于或大于此值的警告消息。

all

等同于指定级别 0

none

抑制所有警告。

param

当过程参数未指定 ByValByRef 时发出警告。

escape

当字符串字面量包含任意数量的转义字符(\)时发出警告。

pedantic

等同于指定 paramescape 参数,另加按值传递参数和任何仅转换为指针的 Cptr 的长度检查,以及在 -lang fb 中对无用后缀发出警告。

next

Next 后跟标识符时发出警告。

funcptr

对不匹配的过程指针发出警告,包括 CASTCPTR 表达式中的转换。隐含 -w all。实验性功能,未来版本中行为可能改变。

constness

CONST(限定符) 在赋值中被丢弃时发出警告。隐含 -w funcptr-w all。未来版本中行为可能改变。

suffix

-lang fb 中对无用后缀发出警告。

error

将警告报告为错误。警告会导致错误计数增加,警告消息显示为"error warning...",编译/汇编/链接中止,fbc 以错误代码退出。

upcast

当向上转型丢弃初始化器时发出警告。

描述

-w 编译器选项确定输出哪些编译器警告(如果有)。每个可能的警告与一个警告级别相关联,从零(0)开始,随着可能出现的问题的严重程度增加而增大。

paramescapepedanticnextfuncptrconstnesssuffixerrorupcast 参数提供通常不会输出的额外警告,即使在默认情况下也不会。

如果未指定 -w 选项,默认行为如同使用了 -w 1-w 选项可以在命令行中多次指定。级别为 0 的警告消息默认不显示。

-w none,或一个足够大的 level 值将抑制所有警告消息。

如果警告名称本身无效,fbc 不会发出警告或错误。例如,-w flarg 不是已识别的警告名称。编译器会静默忽略此情况,以允许包含新版本 fbc 中添加的警告的命令行也可以在旧版本 fbc 中使用而不引发报错。

版本

  • 自 fbc 1.10.0 起:-w upcast 选项
  • 自 fbc 1.09.0 起:-w error 选项。
  • 在 fbc 1.08.0 之前,默认警告级别为 0,某些警告的级别为 -1。

另请参阅

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系