从断言中删除未使用的值警告

时间:2013-07-25 02:44:47

标签: c++ clang assert

我想像这样创建一个有意义的断言:

assert(("precondition failed", false));

它在 GCC 下工作正常,但 Clang 警告我未使用的值,值为"precondition failed"

你们知道在代码中禁用此警告的方法(请不要使用命令行参数或非可移植代码)?重写断言也是一个很好的答案。

1 个答案:

答案 0 :(得分:4)

以下是两种方法,即使使用-Wall -Wextra pedantic也不会产生任何警告:

assert(((void)"precondition failed", false));  // #1
assert("precondition failed" && false);        // #2
相关问题