ເວີຊັນໃof່ຂອງ cppcheck 2.6 ໄດ້ຖືກປ່ອຍອອກມາແລ້ວແລະເຫຼົ່ານີ້ແມ່ນຂ່າວຂອງມັນ

ການປ່ອຍຂອງ ສະບັບຂອງເຄື່ອງວິເຄາະລະຫັດຄົງທີ່ cppcheck ກວດ 2.6, que ອະນຸຍາດໃຫ້ກວດພົບຄວາມຜິດພາດປະເພດຕ່າງ in ຢູ່ໃນລະຫັດ C ແລະ C ++ເຖິງແມ່ນວ່າຈະໃຊ້ໄວຍາກອນທີ່ບໍ່ໄດ້ມາດຕະຖານປົກກະຕິຂອງລະບົບdedັງ.

ການສະສົມປລັກອິນໄດ້ຖືກສະ ໜອງ ໃຫ້ໂດຍຜ່ານການລວມເອົາ cppcheck ເຂົ້າກັບການພັດທະນາຕ່າງ various, ການເຊື່ອມໂຍງຢ່າງຕໍ່ເນື່ອງແລະລະບົບການທົດສອບໄດ້ຖືກສະ ໜອງ ໃຫ້, ພ້ອມທັງລັກສະນະຕ່າງ such ເຊັ່ນການກວດສອບການປະຕິບັດຕາມລະຫັດດ້ວຍຮູບແບບການເຂົ້າລະຫັດ.

ເພື່ອວິເຄາະລະຫັດ, ເຈົ້າສາມາດໃຊ້ທັງຕົວວິເຄາະຕົວຂອງເຈົ້າເອງແລະຕົວວິເຄາະ Clang ພາຍນອກ. ມັນຍັງລວມເຖິງສະຄິບບໍລິຈາກ -cpu.py ເພື່ອສະ ໜອງ ຊັບພະຍາກອນທ້ອງຖິ່ນສໍາລັບວຽກທົບທວນລະຫັດການເຮັດວຽກຮ່ວມກັນສໍາລັບແພັກເກດ Debian.

ການພັດທະນາຂອງ cppcheck ສຸມໃສ່ການກໍານົດບັນຫາທີ່ກ່ຽວຂ້ອງກັບພຶດຕິກໍາທີ່ບໍ່ໄດ້ກໍານົດ ແລະການນໍາໃຊ້ສິ່ງກໍ່ສ້າງທີ່ເປັນອັນຕະລາຍຈາກທັດສະນະຄວາມປອດໄພ.

ເປົ້າisາຍກໍ່ແມ່ນເພື່ອຫຼຸດຜ່ອນຜົນບວກທີ່ບໍ່ຖືກຕ້ອງ. ໃນບັນດາບັນຫາທີ່ໄດ້ລະບຸ: ຕົວຊີ້ໄປຫາວັດຖຸທີ່ບໍ່ມີຢູ່, ການແບ່ງຕົວເລກສູນ, ການໄຫລຂອງເລກເຕັມ, ການດໍາເນີນການປ່ຽນແປງເລັກນ້ອຍທີ່ບໍ່ຖືກຕ້ອງ, ການປ່ຽນແປງທີ່ບໍ່ຖືກຕ້ອງ, ບັນຫາຄວາມຈໍາ, ການນໍາໃຊ້ STL ທີ່ບໍ່ຖືກຕ້ອງ, ການອ້າງອີງຕົວຊີ້ null, ການນໍາໃຊ້ການກວດສອບຫຼັງຈາກການເຂົ້າເຖິງຕົວຈິງກັບ buffer, ລົ້ນຂອບເຂດ ຈຳ ກັດຂອງ buffer, ໂດຍ ນຳ ໃຊ້ຕົວແປທີ່ບໍ່ໄດ້ຕັ້ງຊື່ໄວ້.

ລັກສະນະໃMain່ຫຼັກຂອງ cppcheck 2.6

ໃນສະບັບ ໃໝ່ ນີ້ se ໄດ້ເພີ່ມການກວດສອບຕ່າງ various ໃສ່ແກ່ນຂອງ parser, ໃນນັ້ນການກວດສອບການບໍ່ມີການປະກາດຜົນຕອບແທນຢູ່ໃນຮ່າງກາຍຂອງ ໜ້າ ທີ່ແມ່ນໂດດເດັ່ນ, ລວມທັງການບັນທຶກຂໍ້ມູນທີ່ທັບຊ້ອນກັນ, ນິຍາມພຶດຕິກໍາທີ່ບໍ່ໄດ້ກໍານົດແລະການກວດສອບສໍາລັບມູນຄ່າທີ່ຖືກປຽບທຽບແມ່ນຢູ່ນອກຂອບເຂດຂອງການເປັນຕົວແທນຂອງ ມູນຄ່າປະເພດ.

ຄວາມແປກໃAnother່ອີກອັນ ໜຶ່ງ ທີ່ໂດດເດັ່ນແມ່ນ ການເພີ່ມປະສິດທິພາບການ ສຳ ເນົາບໍ່ໄດ້ ນຳ ໃຊ້ເພື່ອສົ່ງຄືນ std :: move (local);, ບວກກັບການສະ ໜັບ ສະ ໜູນ ໄດ້ຖືກເພີ່ມເຂົ້າໃນການສະແດງຂໍ້ຄວາມວິນິດໄສໃນສີຕ່າງ different ສໍາລັບເວທີ Unix ແລະປ້າຍຫ້ອງສະຸດ ດຽວນີ້ສາມາດມີແທັກໄດ້ ສໍາລັບຕົວຊີ້ທີ່ສະຫຼາດທີ່ມີຄຸນສົມບັດເປັນເອກະລັກ. ດຽວນີ້ ຄຳ ເຕືອນການເຊື່ອມໂຍງ Dangling ແມ່ນໄດ້ອອກໃຫ້ກັບຕົວຊີ້ວັດທີ່ສະຫຼາດແບບນີ້.

ນອກຈາກນີ້, ການຄວບຄຸມ Misra C 2012 ໄດ້ຖືກຈັດຕັ້ງປະຕິບັດຢ່າງເຕັມທີ່, ລວມທັງການແກ້ໄຂ 1 ແລະການແກ້ໄຂ 2, ຍົກເວັ້ນກົດລະບຽບ 1.1, 1.2 ແລະ 17.3. ຜູ້ສັງລວມຂໍ້ມູນຄວນ ດຳ ເນີນການກວດສອບ 1.1 ແລະ 1.2. ຜູ້ສັງລວມຂໍ້ມູນເຊັ່ນ GCC ສາມາດກວດສອບ 17.3.

ຂອງການປ່ຽນແປງອື່ນໆທີ່ໂດດເດັ່ນ ຂອງລຸ້ນ ໃໝ່ ນີ້:

  • ບໍ່ສາມາດເປີດໄຟລ simultaneously ພ້ອມ simultaneously ກັນເພື່ອອ່ານແລະຂຽນຢູ່ໃນກະແສຕ່າງກັນ;
  • ເພີ່ມການວິເຄາະສັນຍາລັກສໍາລັບ ValueFlow. delta ງ່າຍ simple ແມ່ນໃຊ້ເມື່ອຄິດໄລ່ຄວາມແຕກຕ່າງລະຫວ່າງສອງຕົວແປທີ່ບໍ່ຮູ້ຈັກ;
  • ກົດລະບຽບທີ່ໃຊ້ສໍາລັບລາຍການເຄື່ອງ"າຍ "ກໍານົດ" ຍັງສາມາດກົງກັບ #include;
  • ປ້າຍຫ້ອງສະຸດ ດຽວນີ້ສາມາດມີແທັກໄດ້ ແລະດັ່ງນັ້ນ ໜ້າ ທີ່ບໍ່ເສຍຄ່າທີ່ສາມາດຍອມຮັບພາຊະນະບັນຈຸເຊັ່ນ: std :: size, std :: empty, std :: start, std :: end, etc. ເຈົ້າສາມາດລະບຸສຽງຮ້ອງຫຼືການປະຕິບັດສໍາລັບພາຊະນະບັນຈຸ;
  • ແກ້ໄຂບັນຫາດ້ວຍການຈັດການພາຣາມິເຕີ ppcppcheck-build-dir;
    htmlreport ດຽວນີ້ສາມາດພິມຂໍ້ມູນກ່ຽວກັບຜູ້ຂຽນ (ໃຊ້ການຕໍານິ git);
  • ການຂະຫຍາຍການອອກຄໍາເຕືອນກ່ຽວກັບຕົວແປທີ່ບໍ່ຄົງທີ່, ແຕ່ສາມາດກາຍເປັນຄົງທີ່ໄດ້;
  • ຂໍ້ບົກພ່ອງຂອງຕົວວິເຄາະແລະຂໍ້ບົກຜ່ອງໄດ້ຖືກແກ້ໄຂແລ້ວ.

ສຸດທ້າຍ, ຖ້າເຈົ້າສົນໃຈຢາກຮູ້ເພີ່ມເຕີມກ່ຽວກັບສະບັບໃ່ນີ້, ເຈົ້າສາມາດປຶກສາໄດ້ ລາຍລະອຽດໃນລິ້ງຕໍ່ໄປນີ້.

ວິທີການຕິດຕັ້ງ cppcheck ເທິງ Linux?

ສໍາລັບຜູ້ທີ່ສົນໃຈສາມາດຕິດຕັ້ງ cppcheck ໃສ່ Linux Linux ຂອງເຂົາເຈົ້າໄດ້, ເຂົາເຈົ້າສາມາດເຮັດຕາມຄໍາແນະນໍາທີ່ພວກເຮົາແບ່ງປັນຢູ່ລຸ່ມນີ້.

ຖ້າເຈົ້າເປັນຜູ້ໃຊ້ Debian ຫຼືການແຈກຢາຍອື່ນ based ທີ່ອີງໃສ່ຫຼືໄດ້ມາຈາກມັນເຊັ່ນ: Deepin ຫຼື Ubuntu, ເຈົ້າສາມາດຕິດຕັ້ງໂດຍກົງຈາກປາຍທາງໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້:

sudo apt-get install cppcheck

ດຽວນີ້ ສຳ ລັບຜູ້ທີ່ເປັນຜູ້ໃຊ້ Fedora ແລະຜູ້ທີ່ໄດ້ມາຈາກມັນ, ພວກເຂົາສາມາດຕິດຕັ້ງໄດ້ໂດຍການພິມ ຄຳ ສັ່ງຕໍ່ໄປນີ້:

sudo yum instalar cppcheck

ຫຼືສໍາລັບຜູ້ທີ່ເປັນຜູ້ໃຊ້ Arch Linux ຫຼືເປັນຕົວແທນອັນອື່ນຂອງມັນ, ເຂົາເຈົ້າສາມາດຕິດຕັ້ງດ້ວຍຄໍາສັ່ງຕໍ່ໄປນີ້:

sudo pacman -S cppcheck


ເນື້ອໃນຂອງບົດຂຽນຍຶດ ໝັ້ນ ຫລັກການຂອງພວກເຮົາ ຈັນຍາບັນຂອງບັນນາທິການ. ເພື່ອລາຍງານການກົດຜິດພາດ ທີ່ນີ້.

ເປັນຄົນທໍາອິດທີ່ຈະໃຫ້ຄໍາເຫັນ

ອອກ ຄຳ ເຫັນຂອງທ່ານ

ທີ່ຢູ່ອີເມວຂອງທ່ານຈະບໍ່ໄດ້ຮັບການຈັດພີມມາ. ທົ່ງນາທີ່ກໍານົດໄວ້ແມ່ນຫມາຍດ້ວຍ *

*

*

  1. ຮັບຜິດຊອບຕໍ່ຂໍ້ມູນ: Miguel ÁngelGatón
  2. ຈຸດປະສົງຂອງຂໍ້ມູນ: ຄວບຄຸມ SPAM, ການຈັດການ ຄຳ ເຫັນ.
  3. ກົດ ໝາຍ: ການຍິນຍອມຂອງທ່ານ
  4. ການສື່ສານຂໍ້ມູນ: ຂໍ້ມູນຈະບໍ່ຖືກສື່ສານກັບພາກສ່ວນທີສາມຍົກເວັ້ນໂດຍພັນທະທາງກົດ ໝາຍ.
  5. ການເກັບຂໍ້ມູນ: ຖານຂໍ້ມູນທີ່ຈັດໂດຍ Occentus Networks (EU)
  6. ສິດ: ໃນທຸກເວລາທີ່ທ່ານສາມາດ ຈຳ ກັດ, ກູ້ຄືນແລະລຶບຂໍ້ມູນຂອງທ່ານ.