cppcheck 2.6 का नया संस्करण पहले ही जारी किया जा चुका है और ये इसकी खबरें हैं

का रिलीज स्थिर कोड विश्लेषक का संस्करण सीपीपीचेक 2.6कि सी और सी ++ कोड में विभिन्न प्रकार की त्रुटियों का पता लगाने की अनुमति देता हैएम्बेडेड सिस्टम के विशिष्ट गैर-मानक सिंटैक्स का उपयोग करते समय भी।

प्लगइन्स का एक संग्रह प्रदान किया जाता है जिसके माध्यम से विभिन्न विकास, निरंतर एकीकरण और परीक्षण प्रणालियों के साथ cppcheck का एकीकरण प्रदान किया जाता है, साथ ही कोडिंग शैली के साथ कोड अनुपालन की जाँच करने जैसी सुविधाएँ भी प्रदान की जाती हैं।

कोड का विश्लेषण करने के लिए, आप अपने स्वयं के पार्सर और बाहरी क्लैंग पार्सर दोनों का उपयोग कर सकते हैं. इसमें डेबियन पैकेज के लिए सहयोगी कोड समीक्षा कार्य के लिए स्थानीय संसाधन प्रदान करने के लिए एक डोनेट-सीपीयू स्क्रिप्ट भी शामिल है।

cppcheck का विकास अपरिभाषित व्यवहार से जुड़ी समस्याओं की पहचान करने पर ध्यान केंद्रित करता है और ऐसे निर्माणों का उपयोग जो सुरक्षा की दृष्टि से खतरनाक हैं।

लक्ष्य झूठी सकारात्मकता को कम करना भी है. पहचानी गई समस्याओं में: गैर-मौजूद वस्तुओं के संकेत, शून्य से विभाजन, पूर्णांक अतिप्रवाह, गलत बिट-स्थानांतरण संचालन, गलत रूपांतरण, स्मृति समस्याएं, एसटीएल का गलत उपयोग, अशक्त बिंदुओं को संदर्भित करना, एक बफर के लिए वास्तविक पहुंच के बाद चेक लागू करना, अप्रारंभीकृत चर का उपयोग करते हुए, बफर सीमा को ओवरफ्लो करना।

cppcheck 2.6 . की मुख्य नई विशेषताएं

इस नए संस्करण में एसe ने पार्सर के कर्नेल में विभिन्न चेक जोड़े हैं, जिसमें फ़ंक्शन के मुख्य भाग में एक रिटर्न स्टेटमेंट की अनुपस्थिति का सत्यापन, साथ ही साथ अतिव्यापी डेटा रिकॉर्ड, अपरिभाषित व्यवहार परिभाषाएं और मूल्य की तुलना के लिए सत्यापन प्रतिनिधित्व की सीमा से बाहर है प्रकार के मूल्य से।

एक और नवीनता जो सबसे अलग है वह है कॉपी ऑप्टिमाइज़ेशन रिटर्न एसटीडी पर लागू नहीं होता :: मूव (स्थानीय);, यूनिक्स प्लेटफार्मों के लिए विभिन्न रंगों में नैदानिक ​​संदेशों को प्रदर्शित करने के लिए और पुस्तकालय टैग के लिए समर्थन जोड़ा गया था अब एक टैग हो सकता है स्मार्ट पॉइंटर्स के लिए जिनके पास अद्वितीय संपत्ति है। इस प्रकार के स्मार्ट पॉइंटर्स को अब डैंगलिंग लिंक चेतावनी जारी की गई है।

इसके अलावा, मिश्रा सी 2012 नियंत्रण पूरी तरह से लागू किया गया है, नियम 1, 2 और 1.1 को छोड़कर, संशोधन 1.2 और संशोधन 17.3 सहित। कंपाइलर को 1.1 और 1.2 की जाँच करनी चाहिए। जीसीसी जैसा कंपाइलर 17.3 की जांच कर सकता है।

अन्य परिवर्तनों में से जो बाहर खड़े हैं इस नए संस्करण के:

  • फ़ाइल को अलग-अलग स्ट्रीम में पढ़ने और लिखने के लिए एक साथ नहीं खोला जा सकता है;
  • ValueFlow के लिए जोड़ा गया प्रतीकात्मक विश्लेषण। दो अज्ञात चरों के बीच अंतर की गणना करते समय एक साधारण डेल्टा का उपयोग किया जाता है;
  • "परिभाषित" टोकन सूची के लिए उपयोग किए गए नियम #include से भी मेल खा सकते हैं;
  • लाइब्रेरी टैग अब एक टैग हो सकता है और इस प्रकार मुफ्त कार्य जो कंटेनरों को स्वीकार कर सकते हैं जैसे कि एसटीडी :: आकार, एसटीडी :: खाली, एसटीडी :: शुरू, एसटीडी :: अंत, आदि। आप कंटेनरों के लिए येल्ड या एक्शन निर्दिष्ट कर सकते हैं;
  • -cppcheck-build-dir पैरामीटर के संचालन के साथ निश्चित समस्याएं;
    htmlreport अब लेखक के बारे में जानकारी प्रिंट कर सकता है (गिट दोष का उपयोग करके);
  • वेरिएबल्स पर चेतावनियां जारी करना जो स्थिर नहीं हैं, लेकिन स्थिर हो सकती हैं;
  • संचित विश्लेषक बग और कमियों को ठीक किया गया है।

अंत में, यदि आप इस नए संस्करण के बारे में अधिक जानने में रुचि रखते हैं, तो आप परामर्श कर सकते हैं निम्नलिखित लिंक में विवरण।

लिनक्स पर cppcheck कैसे स्थापित करें?

उन लोगों के लिए जो अपने लिनक्स वितरण पर cppcheck स्थापित करने में सक्षम होने में रुचि रखते हैं, वे नीचे दिए गए निर्देशों का पालन कर सकते हैं।

यदि आप एक डेबियन उपयोगकर्ता हैं या कोई अन्य वितरण आधारित है या इससे व्युत्पन्न है जैसे दीपिन या उबंटू, तो आप निम्न आदेश टाइप करके सीधे टर्मिनल से इंस्टॉल कर सकते हैं:

sudo apt-get install cppcheck

अब उनके लिए जो फेडोरा उपयोगकर्ता हैं और इसके डेरिवेटिव हैं, वे निम्नलिखित कमांड टाइप करके इंस्टॉलेशन कर सकते हैं:

sudo yum instalar cppcheck

या जो लोग आर्क लिनक्स उपयोगकर्ता या इसके किसी अन्य व्युत्पन्न हैं, वे निम्न आदेश के साथ स्थापित कर सकते हैं:

sudo pacman -S cppcheck


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।