Die neue Version von cppcheck 2.6 wurde bereits veröffentlicht und das sind die Neuigkeiten

Die Freisetzung von die Version des statischen Code-Analyzers cppcheck 2.6Dass ermöglicht die Erkennung verschiedener Arten von Fehlern in C- und C++-Codeselbst bei der Verwendung von Nicht-Standard-Syntax, die für eingebettete Systeme typisch ist.

Es wird eine Sammlung von Plugins bereitgestellt, durch die die Integration von cppcheck mit verschiedenen Entwicklungs-, Continuous-Integration- und Testsystemen bereitgestellt wird, sowie Funktionen wie die Überprüfung der Codekonformität mit dem Codierstil.

Um den Code zu analysieren, Sie können sowohl Ihren eigenen Parser als auch einen externen Clang-Parser verwenden. Es enthält auch ein donate-cpu.py-Skript, um lokale Ressourcen für die gemeinsame Code-Review-Arbeit für Debian-Pakete bereitzustellen.

Die Entwicklung von cppcheck konzentriert sich auf die Identifizierung von Problemen im Zusammenhang mit undefiniertem Verhalten und die Verwendung von Konstrukten, die aus sicherheitstechnischer Sicht gefährlich sind.

Ziel ist es auch, Fehlalarme zu minimieren. Zu den identifizierten Problemen: Zeiger auf nicht vorhandene Objekte, Division durch Null, Integer-Überläufe, falsche Bitverschiebungsoperationen, falsche Konvertierungen, Speicherprobleme, falsche Verwendung von STL, Dereferenzieren von Nullzeigern, Anwenden von Prüfungen nach einem realen Zugriff auf einen Puffer, Überlaufen der Puffergrenzen mit nicht initialisierten Variablen.

Die wichtigsten neuen Funktionen von cppcheck 2.6

In dieser neuen Version sWir haben dem Kernel des Parsers verschiedene Prüfungen hinzugefügt, unter denen die Überprüfung des Fehlens einer return-Anweisung im Rumpf der Funktion hervorsticht, sowie die von überlappenden Datensätzen, undefinierten Verhaltensdefinitionen und auch die Überprüfung des zu vergleichenden Wertes liegt außerhalb des Bereichs der Darstellung vom Wert des Typs.

Eine weitere Neuheit, die auffällt, ist die Kopieroptimierung gilt nicht für return std :: move (local);, außerdem wurde Unterstützung für die Anzeige von Diagnosemeldungen in verschiedenen Farben für Unix-Plattformen hinzugefügt und das Bibliotheks-Tag kann jetzt ein Tag enthalten für intelligente Zeiger mit eindeutiger Eigenschaft. Für diese Arten von intelligenten Zeigern wird jetzt eine Warnung vor baumelnden Verbindungen ausgegeben.

Zusätzlich die Steuerungen von Misra C 2012 vollständig implementiert sind, einschließlich Abänderung 1 und Abänderung 2, mit Ausnahme der Regeln 1.1, 1.2 und 17.3. Der Compiler sollte die Prüfungen 1.1 und 1.2 durchführen. Ein Compiler wie GCC kann 17.3 überprüfen.

Von den anderen Änderungen, die auffallen dieser neuen Version:

  • Die Datei kann nicht gleichzeitig geöffnet werden, um in verschiedenen Streams zu lesen und zu schreiben;
  • Symbolische Analyse für ValueFlow hinzugefügt. Bei der Berechnung der Differenz zwischen zwei unbekannten Variablen wird ein einfaches Delta verwendet;
  • Die Regeln, die für die Tokenliste "define" verwendet werden, können auch mit #include übereinstimmen;
  • Das Bibliotheks-Tag kann jetzt ein Tag enthalten und damit freie Funktionen, die Container wie std :: size, std :: empty, std :: begin, std :: end usw. akzeptieren können. Sie können Ertrag oder Aktion für Container angeben;
  • Probleme mit der Handhabung des Parameters –cppcheck-build-dir behoben;
    htmlreport kann jetzt Informationen über den Autor ausgeben (mithilfe von gitblad);
  • Erweiterte Ausgabe von Warnungen zu Variablen, die nicht konstant sind, aber konstant werden können;
  • Die angehäuften Analysefehler und -mängel wurden behoben.

Wenn Sie mehr über diese neue Version erfahren möchten, wenden Sie sich an die Details im folgenden Link.

Wie installiere ich cppcheck unter Linux?

Für diejenigen, die daran interessiert sind, cppcheck auf ihrer Linux-Distribution zu installieren, können sie die Anweisungen befolgen, die wir unten teilen.

Wenn Sie ein Debian-Benutzer oder eine andere darauf basierende oder davon abgeleitete Distribution wie Deepin oder Ubuntu sind, können Sie die Installation direkt vom Terminal aus durchführen, indem Sie den folgenden Befehl eingeben:

sudo apt-get install cppcheck

Nun können diejenigen, die Fedora-Benutzer und Derivate davon sind, die Installation durchführen, indem sie den folgenden Befehl eingeben:

sudo yum instalar cppcheck

Oder für diejenigen, die Arch Linux-Benutzer oder ein anderes Derivat davon sind, können sie mit dem folgenden Befehl installieren:

sudo pacman -S cppcheck


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.