主要内容

MISRA C++:2008 Rule 0-1-10

Every defined function shall be called at least once

描述

Every defined function shall be called at least once. 1

理由

如果一个已定义的函数未被调用,则可能表明存在严重的编码错误。例如,函数调用不可达,或者意外调用了其他函数。

Polyspace 实现

此检查项检测已在翻译单元中定义静态函数,但完全未调用该函数的情形。

报告中的补充消息

Every defined function shall be called at least once.The static function funcName is not called.

故障排除

如果您预期会出现违规,而 Polyspace® 未报告该违规,请参阅诊断为何编码规范违规未按预期显示

示例

全部展开

static void func1() {
}

static void func2() { //Noncompliant
}

void func3();

int main() {
    func1();
    return 0;
}

已定义但未调用 static 函数 func2

函数 func3 同样未被调用,但该函数仅被声明而未被定义。未调用 func3 并不违反规则。

检查信息

组:与语言无关的问题
类别:必需

版本历史记录

在 R2013b 中推出


1 All MISRA coding rules and directives are © Copyright The MISRA Consortium Limited 2021.

The MISRA coding standards referenced in the Polyspace Bug Finder™ documentation are from the following MISRA standards:

  • MISRA C:2004

  • MISRA C:2012

  • MISRA C:2023

  • MISRA C++:2008

  • MISRA C++:2023

MISRA and MISRA C are registered trademarks of The MISRA Consortium Limited 2021.