4
でブールへの変換文字列リテラルのためにそこに警告です、私はCPPファイルに以下の構築物(書き換えスニペット)を見つけはかなり大規模なコードベースでのgcc
int main()
{
bool b;
//... some code ...;
b = "False"
}
これは明らかに完全に法的なコードですが、意図的ではありません。簡単に修正できますが、2014年以降は誰も気づかずに存在していますので、明らかに見つけるのは簡単ではありません。
これについてgccに警告することはできますか?
g ++ 7もclang ++ 5も '-Wall -Wextra -Wpedantic'で警告しません。ワオ。 –
fyi: 'bool b {" False "};'もコンパイルされます。しかし 'char const pc [] =" false "; bool b {pc};警告を出します:_ "警告:pcのアドレスは常に「true」と評価されます[-Waddress]" _ –
[ここ](https://gcc.gnu.org) /onlinedocs/gcc/Warning-Options.html)何も見つかりません。 – NathanOliver