CWARN.EMPTY.LABEL

空标签语句

CWARN.EMPTY.LABEL 检查器可查找 switch 语句,其中的标签紧跟一个右括号 (})。

漏洞与风险

这种情况通常为语法错误或拼写错误,并可能导致意外的程序行为。

漏洞代码示例

复制
  void foo() {
    switch(c) {
      case 'a': return;
      case 'b':            
    }
  }

Klocwork 标记了第 4 行,该行包含一个没有跟随表达式的 switch 标签。

修正代码示例

复制
  void foo() {
    switch(c) {
      case 'a': return;
      case 'b': break;          
    }
  }

该修正代码示例显示了例 b 的一个操作。