主要内容

Polyspace Access Web 界面中的调用层次结构

R2026b

调用层次结构窗格显示源代码中函数的调用树。

对于每个函数 foo,调用层次结构窗格会列出调用 foo 的函数和任务(调用方)以及被 foo 调用的函数和任务(被调用方)。调用方以 表示。被调用方以 表示。调用层次结构窗格会列出直接函数调用和通过函数指针进行的间接调用。

注意

对于 Polyspace® Access™ 检查结果,您可能看不到某个函数的所有调用方或被调用方,尤其是通过函数指针和死代码进行的调用。

例如,Polyspace Access 不显示使用 at_exit() 和 at_quick_exit() 注册并分别由 exit() 和 quick_exit() 调用的函数。

您可以使用结果详细信息窗格中的 图标或转至窗口 > 调用层次结构,来打开调用层次结构窗格。

要更新该窗格,请点击结果列表中的某个缺陷,或在按住 CTRL 键的同时点击源代码窗格中的某个结果。您可以看到包含该缺陷的函数及其调用方和被调用方。

在此示例中,调用层次结构窗格显示函数 generic_validation 及其调用方和被调用方。

The Call Hierarchy pane shows the generic_validation function followed by its callers and callees. The File column shows names of files where the calls occur and the Stubbed column states if a callee is stubbed.

提示

要导航到源代码中的调用位置,请选择调用方或被调用方名称

在调用层次结构窗格中,您可以执行以下操作:

  • 自定义视图以仅显示调用方或仅显示被调用方。点击以下按钮来显示或隐藏调用方和被调用方

    Buttons to show/hide callers and callees

  • 您可以在源代码中导航调用层次结构。对于函数,双击调用方或被调用方名称可导航到源代码中该调用方或被调用方的定义。

  • 在已插桩列中,您可以确定函数是否已插桩。该列中的条目显示函数插桩的原因。

    • 自动:Polyspace 找不到函数定义。例如,您没有提供包含函数定义的文件。

    • 标准库:该函数是标准库函数。您没有在 Polyspace 工程中明确提供函数定义。

    • 映射到标准库:您使用了 -code-behavior-specifications (Polyspace Bug Finder) 选项将函数映射到标准库函数。