cppcheck 2.6 ஸ்டாட்டிக் கோட் அனலைசரின் புதிய பதிப்பு வெளியிடப்பட்டுள்ளது. இது, எம்பெடட் சிஸ்டம்களில் காணப்படும் தரமற்ற தொடரியல் பிழைகள் உட்பட, C மற்றும் C++ குறியீடுகளில் உள்ள பல்வேறு வகையான பிழைகளைக் கண்டறிகிறது. பல்வேறு டெவலப்மென்ட், தொடர் ஒருங்கிணைப்பு மற்றும் சோதனை அமைப்புகளுடன் cppcheck-ஐ ஒருங்கிணைக்க உதவும் செருகுநிரல்களின் தொகுப்பு கிடைக்கிறது. அத்துடன், குறியீட்டு நடை சரிபார்ப்பு போன்ற அம்சங்களும் இதில் உள்ளன. நேட்டிவ் பார்சர் மற்றும் வெளிப்புற கிளாங் பார்சர் ஆகிய இரண்டையும் குறியீட்டுப் பகுப்பாய்விற்குப் பயன்படுத்தலாம். கூட்டுத் தொகுப்புக் குறியீட்டுச் சரிபார்ப்பிற்காக உள்ளூர் வளங்களை வழங்கும் donate-cpu.py ஸ்கிரிப்டையும் இந்தத் தொகுப்பு உள்ளடக்கியுள்ளது. Debianதிட்டத்தின் மூலக் குறியீடு GPLv3 உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது.
cppcheck இன் வளர்ச்சி, வரையறுக்கப்படாத நடத்தை மற்றும் பாதுகாப்பு-ஆபத்து கட்டமைப்புகளின் பயன்பாடு தொடர்பான சிக்கல்களைக் கண்டறிவதில் கவனம் செலுத்துகிறது. தவறான நேர்மறைகளைக் குறைப்பதும் இதன் குறிக்கோளாகும். அடையாளம் காணப்பட்ட சிக்கல்களில் இல்லாத பொருட்களுக்கான சுட்டிகள், பூஜ்ஜியத்தால் வகுத்தல், முழு எண் வழிதல், தவறான பிட் ஷிப்ட் செயல்பாடுகள், தவறான மாற்றங்கள், நினைவக மேலாண்மை சிக்கல்கள், STL இன் தவறான பயன்பாடு, பூஜ்ய சுட்டிக்காட்டி நீக்கம், பிந்தைய இடையக சோதனைகள், இடையக மீறல்கள் மற்றும் துவக்கப்படாத மாறிகளின் பயன்பாடு ஆகியவை அடங்கும்.
புதிய பதிப்பில்:
- பகுப்பாய்வி மையத்தில் பின்வரும் சரிபார்ப்புகள் சேர்க்கப்பட்டுள்ளன:
- செயல்பாட்டுப் பகுதியில் திரும்பும் கூற்று இல்லாதது;
- ஒன்றுடன் ஒன்று தொடர்புடைய தரவு பதிவுகள், வரையறுக்கப்படாத நடத்தை வரையறைகள்;
- ஒப்பிடப்படும் மதிப்பு, வகையின் மதிப்பு பிரதிநிதித்துவத்திற்கு வெளியே உள்ளது;
- std::move(local) ஐத் திருப்பி அனுப்ப நகல் உகப்பாக்கம் பயன்படுத்தப்படவில்லை;
- வெவ்வேறு ஸ்ட்ரீம்களில் படிக்கவும் எழுதவும் ஒரு கோப்பை ஒரே நேரத்தில் திறக்க முடியாது;
- யூனிக்ஸ் தளங்களுக்கு, வெவ்வேறு வண்ணங்களில் கண்டறியும் செய்திகளைக் காண்பிப்பதற்கான ஆதரவு சேர்க்கப்பட்டுள்ளது;
- ValueFlow இல் குறியீட்டு பகுப்பாய்வு சேர்க்கப்பட்டது. இரண்டு அறியப்படாத மாறிகளுக்கு இடையிலான வேறுபாட்டைக் கணக்கிடும்போது ஒரு எளிய டெல்டா பயன்படுத்தப்படுகிறது;
- "define" டோக்கன் பட்டியலுக்குப் பயன்படுத்தப்படும் விதிகள் #include உடன் பொருந்தலாம்;
- நூலகக் குறிச்சொல் இப்போது ஒரு குறிச்சொல்லைக் கொண்டிருக்கலாம். , அதன்படி, std::size, std::empty, std::begin, std::end போன்ற கொள்கலன்களை ஏற்றுக்கொள்ளக்கூடிய இலவச செயல்பாடுகள் கொள்கலன்களுக்கான yeld அல்லது செயலைக் குறிப்பிடலாம்;
- நூலகக் குறிச்சொல் இப்போது ஒரு குறிச்சொல்லைக் கொண்டிருக்கலாம். தனித்துவமான உரிமையைக் கொண்ட ஸ்மார்ட் சுட்டிகளுக்கு, அத்தகைய ஸ்மார்ட் சுட்டிகளுக்கான தொங்கும் குறிப்புகள் குறித்து இப்போது ஒரு எச்சரிக்கை வெளியிடப்பட்டுள்ளது;
- --cppcheck-build-dir அளவுருவைக் கையாள்வதில் ஏற்பட்ட சிக்கல்கள் சரி செய்யப்பட்டன;
- htmlreport இப்போது ஆசிரியர் தகவலைக் காட்ட முடியும் (git blame ஐப் பயன்படுத்தி);
- நிலையானதாக இல்லாத ஆனால் மாறக்கூடிய மாறிகள் பற்றிய விரிவாக்கப்பட்ட எச்சரிக்கைகள்;
- பகுப்பாய்வியின் திரட்டப்பட்ட பிழைகள் மற்றும் குறைபாடுகள் சரி செய்யப்பட்டுள்ளன.
கூடுதலாக, மிஸ்ரா சி 2012 இன் சரிபார்ப்புகள் முழுமையாக செயல்படுத்தப்பட்டன, இதில் திருத்தம் 1 மற்றும் திருத்தம் 2 ஆகியவை அடங்கும், விதிகள் 1.1, 1.2 மற்றும் 17.3 தவிர. 1.1 மற்றும் 1.2 சரிபார்ப்புகளை தொகுப்பாளரே செய்ய வேண்டும். சரிபார்ப்பு 17.3 ஐ GCC போன்ற ஒரு தொகுப்பாளரால் செய்ய முடியும்.
ஆதாரம்: opennet.ru
