- Cppcheck
-
Cppcheck Aktuelle Version 1.51
(8. Oktober 2011)Betriebssystem plattformunabhängig Programmiersprache C++ Lizenz GNU General Public License Deutschsprachig nein http://cppcheck.sourceforge.net/ Cppcheck ist ein Programm zur statischen Codeanalyse für die Programmiersprachen C und C++. Es wird aktiv entwickelt[1] und unter der GNU General Public License veröffentlicht. Es unterstützt eine Vielzahl von Tests und ist in der Lage, nicht-standardisierten Code zu überprüfen.[2]
Inhaltsverzeichnis
Funktionen
Cppcheck unterstützt eine Reihe von statischen Tests, die von Compilern nicht oder nur teilweise durchgeführt werden. Einige davon sind:
- inkorrekte Benutzung von Klassen
- Überprüfung von automatische Variablen
- Array-Überläufe
- Ressourcen- und Speicherlecks
- Benutzung veralteter Funktionen[3]
- Verwendung von Funktion die nicht threadsafe sind
- falsche Benutzung der Standard Template Library
- inkorrekte Ausnahmebehandlung
- verschiedene Geschwindigkeits- und Stiloptimierungen
- fehlerhafte Verwendung von Zeigervariablen
Verbreitung
Das Programm wird von einigen Linux-Distributionen verteilt und mitentwickelt[4][5] und existiert sowohl eigenständig als auch in Form von Plug-ins für verschiedene Entwicklungsumgebungen:
Die eigenständige Version für Microsoft Windows besitzt zudem eine optionale grafische Benutzeroberfläche.
Cppcheck wird in einigen großen Projekten eingesetzt und hat bereits geholfen, Fehler zu finden und zu beseitigen.[8] Dazu gehören unter anderem der Linux-Kernel, OpenOffice.org[9] und LibreOffice, Debian[10] und MPlayer.
Entwicklungsgeschichte
Das Programm wird seit Mai 2007 entwickelt. Im Abstand von ein bis drei Monaten erscheinen neue Versionen mit neuen und verbesserten Tests. Folgende Tabelle gibt einen Überblick über die bisher erschienenen Versionen und deren Veröffentlichungsdaten.[11]
Version Veröffentlichung Anmerkungen 1.28 1. Februar 2009 Erste dokumentierte Version. 1.29 2. März 2009 1.31 12. April 2009 1.30 war eine Bugfix-Version für 1.29. 1.32 10. Mai 2009 1.33 7. Juni 2009 1.34 12. Juli 2009 1.35 16. August 2009 1.36 20. September 2009 1.38 25. Oktober 2009 1.37 war eine Bugfix-Version für 1.36. 1.39 6. Dezember 2009 1.40 17. Januar 2010 1.41 7. März 2010 1.43 8. Mai 2010 1.42 war eine Bugfix-Version für 1.41. 1.44 10. Juli 2010 1.45 3. Oktober 2010 1.46 12. Dezember 2010 1.47 6. Februar 2011 1.48 4. April 2011 1.49 12. Juni 2011 1.50 14. August 2011 1.51 8. Oktober 2011 Neue Tests: Initialisierungsreihenfolge in Konstruktoren, Redundante boolsche Vergleiche 1.52 10. Dezember 2011 Legende:Alte VersionAktuelle VersionZukünftige VersionWeblinks
Einzelnachweise
- ↑ Cppcheck auf GitHub
- ↑ „A Survey of C and C++ Software Tools for Computational Science“ (PDF)
- ↑ Liste veralteter Funktionen
- ↑ Cppcheck in Debian
- ↑ Cppcheck in FreeBSD
- ↑ Cppcheclipse
- ↑ Cppcheck Plugin für Jenkins
- ↑ Auflistung einiger wichtiger Fehlerfunde im Cppcheck-Wiki
- ↑ „Hunting for vulnerabilities in large software: the OpenOffice suite“ (PDF)
- ↑ Introducing the "Debian's Automated Code Analysis" (DACA) project
- ↑ Überblick der Versionshistorie
Kategorie:- Programmiersprache C++
Wikimedia Foundation.