C++ va C tillari uchun statik kod analizatori cppcheck 2.7 ning chiqarilishi

Statik kod analizatorining cppcheck 2.7 yangi versiyasi chiqarildi, bu C va C++ tillarida koddagi xatolarning turli sinflarini aniqlash imkonini beradi, shu jumladan, o‘rnatilgan tizimlar uchun xos bo‘lgan nostandart sintaksisdan foydalanishda. Plaginlar to'plami taqdim etilgan bo'lib, ular orqali cppcheck turli xil ishlab chiqish, uzluksiz integratsiya va sinov tizimlari bilan birlashtirilgan, shuningdek kod uslubiga kod muvofiqligini tekshirish kabi xususiyatlarni taqdim etadi. Kodni tahlil qilish uchun siz o'zingizning parseringizdan yoki Clang-dan tashqi tahlilchidan foydalanishingiz mumkin. Shuningdek, u Debian paketlari uchun birgalikda kodni tekshirish ishlarini bajarish uchun mahalliy resurslarni taqdim etish uchun donate-cpu.py skriptini o'z ichiga oladi. Loyihaning manba kodi GPLv3 litsenziyasi ostida tarqatiladi.

Cppcheck-ning rivojlanishi aniqlanmagan xatti-harakatlar va xavfsizlik nuqtai nazaridan xavfli dizaynlardan foydalanish bilan bog'liq muammolarni aniqlashga qaratilgan. Maqsad, shuningdek, noto'g'ri pozitivlarni minimallashtirishdir. Aniqlangan muammolar qatorida: mavjud bo'lmagan ob'ektlarga ko'rsatgichlar, nolga bo'linishlar, butun sonlarni to'ldirish, noto'g'ri bitni almashtirish operatsiyalari, noto'g'ri konvertatsiyalar, xotira bilan ishlashda muammolar, STL-dan noto'g'ri foydalanish, null ko'rsatgichlardan voz kechish, haqiqiy kirishdan keyin tekshirishlardan foydalanish buferga, buferning oshib ketishi, ishga tushirilmagan o'zgaruvchilardan foydalanish.

Bunga parallel ravishda, Shvetsiyaning Cppcheck Solutions AB kompaniyasi Cppcheck Premium-ning kengaytirilgan versiyasini ishlab chiqmoqda, u cheksiz tsikllar mavjudligini tahlil qilishni, ishga tushirilmagan o'zgaruvchilarni qidirishni yaxshilashni va bufer toshib ketishining ilg'or tahlilini ta'minlaydi.

Yangi versiyada:

  • Konteynerlarning ko‘rinishini qo‘llab-quvvatlash qo‘shildi – ko‘rinish atributi kutubxona tegiga qo‘shildi, bu sinf ko‘rinish ekanligini ko‘rsatadi. Osilgan konteynerlarni qidirishda ushbu atributdan foydalanish uchun umr bo'yi tahlil kodi yangilandi;
  • Yaxshilangan tekshiruvlar;
  • Yig'ilgan xatolar tuzatildi va analizatordagi kamchiliklar bartaraf etildi.

Manba: opennet.ru

a Izoh qo'shish