Sun Studio 12:C 用户指南

4.3.27.3 -Nlevel=3

分析整个程序,包括常量传播、常量用作实际参数时的情况以及在 -Nlevel=2 下执行的分析。

在此分析级别检验 C 程序所用的时间比前一级别长 2 到 4 倍。需要额外的时间是因为 lint 通过为程序变量创建可能值的集合对程序进行部分解释。这些变量集合是以常量以及包含程序中的常量操作数的条件语句为基础创建的。这些集合形成创建其他集合的基础(一种常量传播形式)。作为分析结果接收的集合根据以下算法来评估正确性:

如果对象的所有可能值之中存在一个正确值,则该正确值用作进一步传播的基础;否则诊断出一个错误。