In safety-critical software development, standards such as DO-178C, ISO 26262, and IEC 61508 require developers to either use qualified tools or apply rigorous validation processes to demonstrate tool reliability. When the compiler is not already qualified, compiler qualification by validation becomes essential. This process involves systematically testing the compiler against a comprehensive suite (such as SuperTest) and defining mitigations for any observed deviations from the language standard or expected behavior.
ECLAIR plays an instrumental role in this process. Compiler qualification by validation is offered in cooperation with our partner Solid Sands b.v. as part of their Compiler Qualification Service. When the SuperTest compiler test and validation suite reveals defects in the compiler, appropriate mitigations must be defined and systematically enforced. Common mitigations include:
Avoidance of the use of certain language constructs in certain contexts;
Use of a third-party tool to supplement the diagnostic messages not provided by the compiler (e.g., when exceeding translation limits or violating language constraints);
Avoidance of the use of certain compiler option combinations.
ECLAIR supports all three kinds of mitigations:
Compliance with the MISRA guidelines excludes the use of several language constructs in certain contexts. These guidelines are designed with awareness that certain constructs are more likely to expose compiler defects.
ECLAIR checkers for MISRA C:2025 Rule 1.1 and MISRA C++:2023 Rule 4.1.1 provide diagnostic messages for all violations of the applicable language standard, including those involving translation limits.
Thanks to its architecture, which intercepts all calls to the compiler, linker, assembler, and librarian, ECLAIR allows the definition of checks that ensure unwanted compiler option combinations are not used.
In addition, ECLAIR’s CerTran extension automates the configuration of SuperTest for compiler qualification by scanning the application’s build process and generating the exact test configuration files required to cover all use cases. This integration can be fully embedded in a Continuous Integration (CI) system. It not only saves a considerable amount of time but also eliminates the configuration errors that often occur when manually analyzing complex build systems.
In many safety-related projects, runtime libraries must also be qualified, particularly when only a subset of their functionality is used. This can be both time-consuming and error-prone without automation. ECLAIR Code Scout, our dedicated solution for library qualification, identifies exactly which parts of a third-party or standard library are actually used by your application. This enables you to focus qualification and verification efforts only where they are needed, dramatically reducing scope and effort. Combined with ECLAIR’s coding guideline enforcement, Code Scout helps ensure that all used library components are verifiable and compliant with applicable standards.