Versi baru cppcheck 2.6 telah dirilis dan ini adalah beritanya

Pelepasan versi penganalisa kode statis cppcek 2.6Bahwa memungkinkan untuk mendeteksi berbagai jenis kesalahan dalam kode C dan C ++bahkan ketika menggunakan sintaks non-standar yang khas dari sistem tertanam.

Kumpulan plugin disediakan di mana integrasi cppcheck dengan berbagai pengembangan, integrasi berkelanjutan dan sistem pengujian disediakan, serta fitur seperti memeriksa kepatuhan kode dengan gaya pengkodean.

Untuk menganalisis kode, Anda dapat menggunakan parser Anda sendiri dan parser Clang eksternal. Ini juga termasuk skrip donate-cpu.py untuk menyediakan sumber daya lokal untuk pekerjaan tinjauan kode kolaboratif untuk paket Debian.

Pengembangan cppcheck berfokus pada mengidentifikasi masalah yang terkait dengan perilaku yang tidak terdefinisi dan penggunaan konstruksi yang berbahaya dari sudut pandang keamanan.

Tujuannya juga untuk meminimalkan positif palsu. Di antara masalah yang diidentifikasi: pointer ke objek yang tidak ada, pembagian dengan nol, integer overflows, operasi bit-shifting yang salah, konversi yang salah, masalah memori, penggunaan STL yang salah, dereferencing null pointer, menerapkan pemeriksaan setelah akses nyata ke buffer, melebihi batas buffer, menggunakan variabel yang tidak diinisialisasi.

Fitur baru utama dari cppcheck 2.6

Dalam versi baru ini se telah menambahkan berbagai pemeriksaan ke kernel parser, di antaranya verifikasi tidak adanya pernyataan pengembalian di badan fungsi menonjol, serta catatan data yang tumpang tindih, definisi perilaku tidak terdefinisi dan juga verifikasi untuk nilai yang dibandingkan berada di luar jangkauan representasi dari nilai jenisnya.

Hal baru lainnya yang menonjol adalah pengoptimalan salin tidak berlaku untuk mengembalikan std :: move (local);, ditambah dukungan telah ditambahkan untuk menampilkan pesan diagnostik dalam warna berbeda untuk platform Unix dan tag perpustakaan sekarang dapat berisi tag untuk pointer pintar yang memiliki properti unik. Peringatan tautan menggantung sekarang dikeluarkan untuk jenis penunjuk pintar ini.

Selain itu, Kontrol Misra C 2012 telah diterapkan sepenuhnya, termasuk Amandemen 1 dan Amandemen 2, kecuali untuk aturan 1.1, 1.2 dan 17.3. Kompiler harus melakukan pemeriksaan 1.1 dan 1.2. Kompiler seperti GCC dapat memeriksa 17.3.

Dari perubahan lain yang menonjol dari versi baru ini:

  • File tidak dapat dibuka secara bersamaan untuk membaca dan menulis dalam aliran yang berbeda;
  • Menambahkan analisis simbolis untuk ValueFlow. Delta sederhana digunakan saat menghitung perbedaan antara dua variabel yang tidak diketahui;
  • Aturan yang digunakan untuk daftar token "define" juga dapat cocok dengan #include;
  • Label perpustakaan sekarang dapat berisi tag dan dengan demikian fungsi gratis yang dapat menerima wadah seperti std :: size, std :: kosong, std :: begin, std :: end, dll. anda dapat menentukan yeld atau tindakan untuk wadah;
  • Memperbaiki masalah dengan penanganan parameter –cppcheck-build-dir;
    htmlreport sekarang dapat mencetak informasi tentang penulis (menggunakan git menyalahkan);
  • Penerbitan peringatan yang diperpanjang pada variabel yang tidak konstan, tetapi dapat menjadi konstan;
  • Bug dan kekurangan penganalisis yang terakumulasi telah diperbaiki.

Akhirnya, jika Anda tertarik untuk mengetahui lebih banyak tentang versi baru ini, Anda dapat berkonsultasi detailnya di tautan berikut.

Bagaimana cara menginstal cppcheck di Linux?

Bagi yang tertarik untuk dapat menginstal cppcheck di distro Linux mereka, dapat mengikuti petunjuk yang kami bagikan di bawah ini.

Jika Anda adalah pengguna Debian atau distribusi lain yang berbasis atau berasal darinya seperti Deepin atau Ubuntu, Anda dapat menginstal langsung dari terminal dengan mengetikkan perintah berikut:

sudo apt-get install cppcheck

Nah bagi yang pengguna Fedora dan turunannya, bisa melakukan instalasi dengan mengetikkan perintah berikut:

sudo yum instalar cppcheck

Atau bagi pengguna Arch Linux atau turunan lainnya, dapat menginstal dengan perintah berikut:

sudo pacman -S cppcheck


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.