Cppcheck

Built for safety critical applications

Software programming_cppcheck

Static code analysis for safety critical software

Static analysis is an integral part of developing safety-critical software, particularly in adhering to stringent safety-related ISO standards such as ISO 62304 (medical devices), IEC 61508 (general safety-related systems), ISO 26262 (automotive), and EN 50128 (railway applications). 

These standards mandate rigorous development processes to ensure the highest levels of safety and reliability. Static analysis tools scrutinize source code for potential errors and compliance with these standards, facilitating early detection of issues that could compromise safety. This not only streamlines the development process but also plays a pivotal role in certifying that the software meets the exacting safety standards required in these critical industries.

Why use Cppcheck for safety critical software

Cppcheck is exceptionally well-suited for safety-critical systems, offering a unique blend of speed, accuracy, and real-world validation. 

  • Its efficiency allows it to be run on individual developers' computers, catching bugs at the earliest stage of development, which is crucial for maintaining the integrity of safety-critical systems. 
  • Cppcheck is built on the principle of zero false positives. This aspect is vital when safety certifying products, as false positives can lead to unnecessary documentation and verification efforts, delaying the certification process. 
  • All of Cppcheck's checkers are rigorously tested against large open-source projects, ensuring that the issues it identifies are practical and relevant, not just theoretical. This testing against real-world codebases ensures that Cppcheck remains finely tuned to the kinds of bugs that genuinely occur in safety-critical applications, making it a reliable and efficient tool in such high-stakes environments.

Cppcheck has implemented the following standards

  • MISRA C 2023, MISRA C 2023 is the latest edition of the MISRA C guidelines, a set of software development standards for the C programming language, particularly focused on the creation of safe, secure, and portable code in embedded systems. MISRA (Motor Industry Software Reliability Association) guidelines are widely respected and followed in various high-integrity and safety-critical industries, such as automotive, aerospace, medical devices, and others.
  • MISRA C++ 2008, MISRA C++ 2008 is a set of guidelines for the use of the C++ programming language in critical systems, where reliability and safety are of paramount importance. Developed by the Motor Industry Software Reliability Association (MISRA), these guidelines were established to extend the principles of the MISRA C standards, which were originally focused on the C language, to C++.
  • Autosar C++ 2014, AUTOSAR C++14 provides specific coding rules and best practices for the Automotive industry to ensure high code quality, readability, and maintainability, which are essential for long-term software stability and performance.

In need of a Safety Certified tool?

Cppcheck is currently in the process of validating the safety of our tool and thereby obtaining a Safety Certification, aligning with the most relevant safety standards. This pursuit symbolizes a commitment to the highest levels of safety and quality assurance.

A certified tool significantly aids in securing safety certification for your product, primarily because it assures that the tool itself adheres to rigorous safety and quality standards.

When a tool used in the development of a product, especially in safety-critical domains like automotive, aerospace, or medical devices, is safety certified, it implies that the tool has been rigorously tested and verified to produce reliable and accurate results. This certification is often seen as a stamp of reliability and trustworthiness in the eyes of safety certification bodies, and is therefore a crucial factor in obtaining safety certification for your own product.



Contact us

Have any questions? Please contact us through the form below and we will get back to you asap!