Code-Analyse für C++: cppcheck hat den Parser renoviert und MISRA-Regeln ergänzt

Das Analysewerkzeug soll Entwickler verstärkt beim Umsetzen der MISRA-Konformität im C/C++-Code unterstützen. Zudem wurde der Parser überarbeitet.

In Pocket speichern vorlesen Druckansicht 17 Kommentare lesen

(Bild: Connect world/Shutterstock.com)

Lesezeit: 2 Min.
Von
  • Silke Hahn

cppcheck, ein Werkzeug zum Analysieren statischen Quellcodes in den Sprachen C und C++, ist in Version 2.3 erschienen. Wohl wichtigste Neuerungen sind der renovierte C++-Parser und die Ergänzung zahlreicher sicherheitsrelevanter MISRA-Regeln. Außerdem umfasst das Analyse-Tool einige geänderte Parameter, um bekannte "Falschpositivmeldungen" zu reduzieren.

Besonderes Augenmerk legt das Prüfwerkzeug auf die Implementierung des MISRA-Regelwerks der MISRA (Motor Industry Software Reliability Association) für C und C++: Der in der Automobilindustrie entstandene Programmierstandard ist mittlerweile für Embedded-Techniken insgesamt einsetzbar und soll sicherstellen, dass in C und C++ erstellter Quellcode sicher und zuverlässig ist. Prüftools wie cppcheck sollen Entwickler darin unterstützen, in ihren Programmen Konformität mit dem MISRA-Standard zu erreichen.

Am C++-Parser betreffen die Neuerungen die Typen und einige zuvor offenbar falsch gewesene Operanden in AST. Laut Releasemeldung soll Version 2.3 des Werkzeugs auch für Templates Vereinfachungen bereithalten. Der Import des Clang-Compilers und die Value-Flow-Analyse sollen nachgebessert sein, eine Reihe weiterer Probleme gilt als behoben.

Zur Codesicherheit in C/C++

In den Library-Dateien hat der Herausgeber von cppcheck, Daniel Marjamaki, am Feintuning der Konfiguration gearbeitet: So enthalten die Dateien boost.cfg, googletest.cfg, qt.cfg, windows.cfg und wxwidgets.cfg Neuerungen, und das Werkzeug unterstützt ab der aktuellen Version auch einige weitere Plattformen wie Elbrus E1C+, PIC, PIC8 und MIPS.

Die Neuerungen lassen sich auf Sourceforge nachlesen, wo Marjamaki die Ankündigung der neuen Version seines Tools veröffentlicht hat.

betterCode() C++20: Das Online-Event mit Bjarne Stroustrup

(Bild: cpp.bettercode.eu)

Am 21. Januar 2021 veranstalten heise Developer und der dpunkt.verlag ein Online-Event zu C++20.

Der neue Standard bringt durch Module, Concepts, Coroutinen und die Ranges-Library große Veränderungen in Gang, die für das Programmieren mit Modernem C++ richtungsweisend sind. Bei der von der betterCode() präsentierten Online-Konferenz zu C++20 vermitteln die an der Standardisierung beteiligte Fachleute Peter Sommerlad, Nico Josuttis, Daniela Engert, Andreas Fertig und Detlef Vollmann einen praxisnahen Einblick in die neuen Features. Der aus New York zugeschaltete Vater von C++ Bjarne Stroustrup diskutiert live mit dem Publikum.

Das können Sie lernen:

  • Die kontinuierliche Evolution von C++: Wohin geht die Reise?
  • Was ist neu in C++20?
  • Neue Features: Module, Concepts, Coroutinen und die Ranges-Library kennen lernen
  • Die wichtigsten Bibliotheken
  • Strong Typing mit Modernem C++
  • Grundlegende Designprinzipien
  • Templates im Praxiseinsatz
  • Ausblick auf künftige Standards

Bis zum 16. Dezember gilt noch der Frühbuchertarif. Mehr Informationen lassen sich der Konferenz-Website entnehmen.

(sih)