Cppcheck

Türkçe karşılığı: CppcheckAlan: Program Analysis

C ve C++ kaynak kodunda undefined behavior, tehlikeli örüntüler ve çeşitli programlama hatalarını arayan statik analiz aracı.

Teknik Bağlam

Cppcheck; null pointer dereference, out-of-bounds erişim, sıfıra bölme, geçersiz shift, uninitialized value ve bellek yönetimi gibi hata sınıflarına odaklanır. Gömülü projelerde görülen compiler extension ve standart dışı sözdizimlerini analiz edebilme hedefi vardır.

Güncel açık kaynak dağıtımda MISRA C:2012 için bir eklenti bulunur; resmi kılavuz açık kaynak MISRA kapsamının kısmi olduğunu belirtir. Bu davranış sürüme bağlıdır.

Sınırlar

Cppcheck bir formal verifier değildir. Resmi kılavuz, bulunması gereken bazı hataların kaçabileceğini açıkça belirtir. Sessiz analiz çıktısı programın bütün yürütmelerde güvenli olduğunun kanıtı değildir.

İlgili Makale

İlgili teknik yayınlar

Başlık veya özetinde bu kavrama doğrudan karşılık gelen yayınlar.

MISRA C ve Statik Kod Analizi

Gömülü ve kritik C yazılımında MISRA C, Cppcheck, Splint, Astrée ve TI Code Composer Studio üzerinden statik analizin garanti sınırlarını; lexical taramadan abstract interpretation'a uzanan analiz katmanlarıyla inceliyorum.