原創|產品更新|編輯:鄭恭琳|2020-07-06 10:55:29.187|閱讀 461 次
概述:1.3.5版本對PC-lint Plus進行了許多改進。包括:更新了AUTOSAR,MISRA C和MISRA C++,新消息和標志選項,對Visual Studio配置生成器GUI的改進等。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
功能改進
pclpvscfg實用程序現在建議可選的輸出文件默認文件名。
消息846、9212和9149以前出現在書面符號說明符的存在下,如果位字段的類型是constor volatile-container。這些信息將不再根據資格發布。
允許使用帶有64位版本的MicrosoftVisualStudio2012、2010、2008和2005的pclpvscfg
對MicrosoftVisualStudio2012、2010、2008和2005的64位版本的支持以前添加到PCLP-2889中。 pclpvscfg實用程序現在也允許使用這些工具。
當更改所選語言標準為時已晚時,模塊處理過程中出現的-std選項現在被報告。
消息857(memcmp/memcpy/memmove函數中的參數不兼容)是以前發布的,如果前兩個參數是指向不同不合格類型的指針。消息現在只有在不同類型不兼容時才發出。
pclp_config.py實用程序現在將metaware_ccac識別為一個參數
-編譯器選項,并為Meta Ware ccac編譯器提供支持。文檔描述了如何創建Meta Ware編譯器配置以及如何將PC-lint Plus與基于Eclipse的IDE集成。
以前使用的au-misra3-amd1.lnt配置文件++d選項定義ctype.h宏以擴展到相應函數的調用。現在,配置文件使用--u選項來防止首先定義宏窗體。
在PC-lintPlus中,+的emacro選項可以用來導致消息只在特定宏的擴展期間發出。關于不能為此目的使用這一備選辦法的過時說法已從這一備選辦法的說明中刪除。
以前不存在的-efunc和+efunc選項現在被包含在“如何應用抑制選項”一節中的參數化選項列表中,這些選項使投票影響消息抑制。
在消息2425的實例中,當語義選項引用過多的參數索引時出現的單詞“不存在”的拼寫已被糾正。
部分支持AUTOSAR17規則A5-5-1現在通過消息414(可能除以零)提供,這是當PC-lintPlus確定一個零值的潛在可能性作為模數除法的RHS時發出的。
當const或volatile出現在typedef或使用name之前時,新消息9183(限定符先于typedef類型)將報告。此消息支持AUTOSAR規則A7-1-3。
新消息9187(在沒有相應const版本的情況下聲明的非重載下標操作符)是在類聲明一個重載的非重載下標成員操作符而不聲明一個等效的const版本時發出的。此消息支持AUTOSAR規則A13-5-1。
靜態局部變量不再增加所報告的函數的堆棧使用。
添加了LLVM/clang的版權通知和OpenBSD Regex的屬性。
靜態局部變量不再被假定為在調用函數時可能被修改而不執行其定義。以前的行為可以通過啟用新的標志fls來恢復。
更新了信息10、19、52、53、72、82、305、307、318、337、432的說明,437,438,451,466,514,517,571,616,621,686,695,734,1101,1536,1537,1579,糾正拼寫/語法和格式問題,糾正示例,澄清描述文本等。
此版本的PC-lintPlus認證為ISO26262:2018(ASILD合格)和IEC61508:2010(SIL4合格)。PC-lint Plus發行版的doc/目錄包括這些認證的相應證書,以及“在安全關鍵應用中使用PC-lint Plus的最佳做法”文件,該文件為在安全關鍵應用中使用PC-lint Plus提供了合格和使用指南。
值跟蹤機制通常在調用未知函數時丟棄靜態變量的已知值(例如。 其主體不可用)作為函數的人可以修改靜態變量。以前,當一個靜態變量被賦值時,一個值由對具有已知返回值的函數的調用組成(例如,具有內置或用戶定義的返回語義的函數),該信息未保存在靜態變量中。PC-lint Plus現在將保存這些信息。
零長度數組現在被視為值跟蹤的不完全數組,如PC-lintPlus將不會對數組的實際大小作出任何假設。這可以防止在索引或訪問此類數組的元素時(例如使用“struct hack”時)發出消息,例如415和416。
針對編譯器配置由pclp_config生成的GCC,現在預防宏_glibcxx_builtin_is_same_as和_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED被定義。這些宏的抑制阻止了對這些宏的利用 is_same_as和GCC10頭有條件地使用is_constant_evaluated編譯器本質。這些intrinsic尚未得到PC-lint Plus的支持,如果PC-lint Plus遇到錯誤消息,將導致錯誤消息。
以前,_Float128關鍵字是無條件啟用的,這可能導致在C++模式下處理GCC報頭時出現錯誤,其中GCC將_Float128定義為typedef。_Float128現在通過在co-gcc.h中定義相應的typedef來支持C模塊,該typedef只對在C模式中處理的模塊激活。
更多更新詳情請查看后續更新內容詳解。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn