elib
DLR-Header
DLR-Logo -> http://www.dlr.de
DLR Portal Home | Imprint | Privacy Policy | Contact | Deutsch
Fontsize: [-] Text [+]

Include-Analysis for C++ Source Code

Bernehed, Aiko (2022) Include-Analysis for C++ Source Code. Bachelor's, Heinrich-Heine-Universität Düsseldorf.

[img] PDF
791kB

Abstract

The C++ programming language is highly versatile and leaves many aspects of code organization to programmers, but provides functionality for code separation into source and header files. As projects have grown larger in size and C++ has found its way into critical infrastructure, the community has started developing a host of best-practice guidelines for code organization. Since these are not programmatically enforced during development, static include analysis is an excellent tool for checking programmers adherence to these self-imposed guidelines. In this work, the Axivion Suite by the Axivion GmbH is used to develop a set of rules that enforce a number of guidelines as they may be encountered in real-world applications. The Axivion Suite uses a proprietary compiler to gather analysis data on existing C++ source code of a given project. The rules presented here are enforced by running specially developed Python scripts on the analysis data generated by the Axivion compiler. Finally, the entire set of rules is used to analyze an existing application, "Notepad++", and the results are compared to Axivion's proprietary rules, gathered under the name of Generic stylechecks. "Notepad++" consists of a core program and the Scintilla and Boost libraries, all three of which exhibit a host of different issues. Overall, the rules developed here uncover 3,673 and Axivion's rules 3,890 violations. The minutiae of these results are discussed and final conclusions about this work and Axivion's implementation drawn.

Item URL in elib:https://elib.dlr.de/186054/
Document Type:Thesis (Bachelor's)
Title:Include-Analysis for C++ Source Code
Authors:
AuthorsInstitution or Email of AuthorsAuthor's ORCID iDORCID Put Code
Bernehed, AikoUNSPECIFIEDhttps://orcid.org/0000-0002-2391-0360UNSPECIFIED
Date:5 April 2022
Refereed publication:No
Open Access:Yes
Status:Published
Keywords:C++ Static Analysis Programmiertechniken Source Code Analysis
Institution:Heinrich-Heine-Universität Düsseldorf
Department:Softwaretechnik und Programmiersprachen
HGF - Research field:Energy
HGF - Program:Materials and Technologies for the Energy Transition
HGF - Program Themes:High-Temperature Thermal Technologies
DLR - Research area:Energy
DLR - Program:E SW - Solar and Wind Energy
DLR - Research theme (Project):E - Smart Operation
Location: Jülich
Institutes and Institutions:Institute of Solar Research > Solar Power Plant Technology
Deposited By: Bernehed, Aiko
Deposited On:29 Sep 2022 12:33
Last Modified:14 Oct 2022 12:43

Repository Staff Only: item control page

Browse
Search
Help & Contact
Information
electronic library is running on EPrints 3.3.12
Website and database design: Copyright © German Aerospace Center (DLR). All rights reserved.