CWARN.CONSTCOND.DO

do ステートメントの条件は定数です

CWARN.CONSTCOND.DO チェッカーは、do ステートメントの条件が定数であるインスタンスを検出します。

脆弱性とリスク

ステートメントの条件が定数である場合、通常はプログラムの意図が達成されず、予期しない結果になります。

脆弱コード例

コピー
  void foo() {
    int x = 3;
    do {
      x++;
    } while (x = 10);  
 }

この例では、Klocwork は、条件 (x=10) が定数である 5 行目にフラグを立てます。

修正コード例

コピー
  void foo() {
    int x = 3;
    do {
      x++;
    } while (<10);             
 }

修正例では、条件は定数ではなくなりました。