Polyspace 平台用户界面中的“调用层次结构”
本主题侧重于 Polyspace® 平台用户界面。要了解 Polyspace 桌面端用户界面中的等效窗格,请参阅Polyspace 桌面端用户界面中的调用层次结构。
调用层次结构窗格显示源代码中函数的调用树。
对于每个函数 foo,调用层次结构窗格会列出调用 foo 的函数和任务(调用方)以及被 foo 调用的函数和任务(被调用方)。调用方以
表示。被调用方以
表示。调用层次结构窗格会列出直接函数调用和通过函数指针进行的间接调用。
注意
对于 Polyspace Access™ 检查结果,您可能看不到某个函数的所有调用方或被调用方,尤其是通过函数指针和死代码进行的调用。
例如,Polyspace Access 不显示使用 at_exit() 和 at_quick_exit() 注册并分别由 exit() 和 quick_exit() 调用的函数。
通过选择结果详细信息窗格中的
图标或转至窗口 > 调用层次结构,来打开调用层次结构窗格。
要更新该窗格,请点击结果列表中的某个缺陷,或在按住 CTRL 键的同时点击源代码窗格中的某个结果。您可以看到包含该缺陷的函数及其调用方和被调用方。
在此示例中,调用层次结构窗格显示函数 generic_validation 及其调用方和被调用方。

提示
要导航到源代码中的调用位置,请选择调用方或被调用方名称
在调用层次结构窗格中,您可以执行以下操作:
显示/隐藏调用方和被调用方 - 自定义视图以仅显示调用方或仅显示被调用方。点击以下按钮来显示或隐藏调用方和被调用方

在调用层次结构中导航 - 您可以在源代码中的调用层次结构中导航。对于函数,点击调用方或被调用方名称可导航到源代码中该调用方或被调用方的定义。
确定函数是否已插桩 - 在已插桩列中,您可以确定函数是否已插桩。该列中的条目显示函数插桩的原因。
自动:Polyspace 找不到函数定义。例如,您没有提供包含函数定义的文件。
用户指定:您使用
要插桩的函数 (-functions-to-stub)(Polyspace Code Prover) 选项覆盖了函数定义。查找表:您通过使用从特定类型的查找表返回值的函数来验证生成的代码。您使用了
为 Embedded Coder 查找表生成桩件 (-stub-embedded-coder-lookup-table-functions)(Polyspace Code Prover) 选项。标准库:该函数是标准库函数。您没有在 Polyspace 工程中明确提供函数定义。
映射到标准库:您使用了
-code-behavior-specifications(Polyspace Code Prover) 选项将函数映射到标准库函数。编译错误:函数体中存在编译错误,因此无法分析函数。