得到了200條左右的報警。
拷貝到文本文件中,處理一下,導入excel,開始一跳一跳查看,分析。。
先去掉 所有的 Info 830:Location cited in prior message,這條意思大概是前一條消息的提示(不太明白,反正沒什麼用)。然後把報警按照報警號排序,一樣的報警可以統一處理一下。
每條報警信息不管提示信息嚴重不嚴重,都到源文件中核對一下,有些是誤報,標記一下。
得到初步分析結果,做成表格大致如下:
文件 | 行號 | 報警類型 | 報警碼 | 對象 | 描述 | 描述說明 | 分析結果 | 結果確認 |
F:\XXX\XXX.c | 2908 | Warning | 564 | UC_c4=(UC_c4++)%2; | variable 'UC_c4' depends on order of evaluation | 變量的值取決於計算順序 | 錯誤 | 未確認 |
F:\XXX\XXX.c | 3495 | Warning | 644 | LCM_DataWrite_1_Data (Data,DATA_WRITE_AND_NONVARIABLE_ADP); | Variable 'Data' (line 3476) may not have been initialized | 變量未初始化 | 風險 | 未確認 |
F:\XXX\XXX.c | 1935 | Warning | 506 | if(1) | Constant value Boolean | 忽略 | 未確認 | |
F:\XXX\XXX.c | 1121 | Warning | 525 | case XXX: | Negative indentation from line 1119 | 負縮進 | 誤報 | 未確認 |
描述說明爲自己添加的,對於pclint生成的描述信息的說明。分析結果是分析後得出的初步結論。結果確認是需要和程序員進行確認,看看分析結果是不是正確。
分析結果顯示,有兩個是錯誤嫌疑,兩個是風險嫌疑,其他都是誤報或者可忽略的東西。
下一步,找程序員逐條覈對,看是否真的存在錯誤。