Latest Blog Posts

The advantages of leaving it undefined
Undefined behavior remains an elusive subject. On the one hand, it potentially exposes your program to dangerous situations and exploitations. On the other hand, it enables the speed and portability that the C programming language is...

Let’s talk about library qualification – in person this time
Library qualification is key, because code from the library is linked into the application and installed onto the target device. Over the last few years, we have spoken many times about this topic in our blogs and webinars. We are...

We need to talk about security
A study by the University of Turku, Finland (A Large-Scale Security-Oriented Static Analysis of Python Packages in PyPI) showed that 46% of 224,651 open source Python Packages displayed one or more security issues. Is that good news,...

A multitool for test generation
For me as a software engineer, it is difficult to suppress the urge to automate. Regardless the complexity of a task, in my ideal world everything would be automated. Generating tests is no exception to this rule, so naturally we...

Qualifying your compiler in practice: the expert speaks
As Qualification Lead Engineer, my main role at Solid Sands is leading compiler qualification projects as part of our Compiler Qualification Service. In the four years I have worked here, I have seen many compilers, many compiler...

Safety is important everywhere
You can choose between reading an article about bungee jumping or going out and doing it. If you choose to jump, functional safety kicks in. Bungee jumping is a safety-critical activity, because if your equipment fails you may find...

Verification of floating-point accuracy is important
Floating-point values can look a lot like Real Arithmetic, but there are a lot of tricky details at the fringes. The accuracy of floating-point results is one of them, and so is its verification. The mathematically correct result of...

What are your options if you need to work with a qualified compiler?
You need a qualified compiler to comply with regulations as set out in ISO 26262 and other functional safety standards. Besides meeting this requirement, qualification also increases confidence in your compiler and decreases the...

Library code coverage – be aware of the challenges
Achieving a high level of code coverage through testing is one of the requirements of functional safety standards such as ISO 26262. Standard libraries are loaded into your safety-critical device like any other piece of code, so...

Addressing the need to qualify C/C++ compilers & libraries for use in a safety-critical context
The systems used in modern automotive, rail, industrial control, medical and aerospace applications are, of course, incredibly complex and intricate. Given their safety-critical nature, ongoing reliable operation needs to be assured...