问题描述
bin/clang++ -Werror=foo -Wno-bar...
等。基本上有很多警告和错误标志。好的,这很有道理。然后,我得到一个错误,例如:
error: implicit conversion loses integer precision: 'ulong' (aka 'unsigned long') to 'int') [-Wshorten-64-to-32]
在上面的clang ++命令中,-Wshorten-64-to-32不是标志。因此它必须来自该行之外的某个地方。 clang可以使用命令行之外的标志吗?我的理解是,它正在使用的所有标志都将直接打印在该命令上。
解决方法
默认情况下,许多警告处于启用状态,而其他警告则由-Wall
,-Wextra
等选项启用,这些选项可一次隐式启用多个警告类别。
报告了警告类别-Wshorten-64-to-32
,以便您可以通过在命令行中添加-Wno-shorten-64-to-32
来关闭不喜欢的特定警告。