Latest Blog Posts

Compiler Exploring: Safety and Modernity

Compiler Exploring: Safety and Modernity

As compiler and library testers, we often find ourselves between the demands of developers and those of the functional safety industry. On the one hand, compiler developers are constantly pushing to implement the latest and greatest...

read more
C++ != (C+=1)

C++ != (C+=1)

Due to the high demand for C++ Standard Library qualification, we are actively developing tests, test specifications, and requirements for the C++ standard library in SuperGuard. Everyone knows that C++ is based on C and preserves...

read more
Creative compilers can be a safety risk

Creative compilers can be a safety risk

The most safety-critical software tool in your application development process is the compiler. It generates virtually all the code in the application binary. However, modern compilers can be exceptionally creative in constructing...

read more
Are we all talking the same language?

Are we all talking the same language?

Telling the compiler which version of the language you are using is essential because it improves the portability of your code at very little expense. Additionally, in safety and mission-critical applications, you must verify that...

read more
Verifying the compiler’s pipework

Verifying the compiler’s pipework

Compilers are highly complex machines with two areas that deserve extra scrutiny. They are the register allocator and the calling convention. While register allocation is the subject of countless research papers, the calling...

read more
Can your compiler count to ten?

Can your compiler count to ten?

The size of integers and other primitive types is not fixed by the C/C++ programming language specifications. It is implementation-defined. Unlike unspecified and undefined behavior, that is not a free lunch for the compiler....

read more