Solid Sands' SuperTest Extended by 3000 New Tests and Support for C++20

By Tiera Oliver

Associate Editor

Embedded Computing Design

January 11, 2022

News

Solid Sands' SuperTest Extended by 3000 New Tests and Support for C++20

Solid Sands announced Update #3 to its SuperTest Vermeer Release. This update supports widespread adoption of the C++ programming language in safety-critical applications with comprehensive C++20 language coverage.

SuperTest Vermeer Release Update #3 includes over 800 tests designed to verify the correct implementation of C++ language constructs. It also includes 1700 new tests for C++ library functions to make sure they work as intended in all use cases.

“Vehicle manufacturers are moving from single-core embedded processors to high-performance multi-core processor solutions, for which C++ has a distinct advantage over C in terms of structuring large software projects. As a result, the AUTOSAR Adaptive Platform now includes programming guidelines for C++,” said Marcel Beemster, Chief Technology Officer at Solid Sands. “By upgrading to SuperTest Vermeer Release Update #3, developers who want to make use of the latest features in C++, can now verify that their compiler implements them correctly.”

For diagnostic tests that are specifically designed to generate a compiler error, SuperTest’s C++ support includes line-number accurate error reporting so that developers can identify the precise language construct that generates the error.

Applicable across SuperTest’s full gamut of C language support, SuperTest Vermeer Release Update #3 features improved floating-point accuracy checking, with the default accuracy limit on arithmetic operations now universally set at four ULP (Units in the Last Place - the smallest interval between two subsequent floating-point numbers). If needed, SuperTest users can change this default limit to a ULP value of their choice. For non-library arithmetic it even can be set to zero to check rounding accuracy. Update #3 also incorporates other enhancements to SuperTest’s arithmetic function testing, including improvements to its arithmetic depth suite that now supports target platforms that do not support floating-point arithmetic.

SuperTest’s calling convention test suite has been improved in terms of its ability to randomly select local and global variables. SuperTest Vermeer Release Update #3’s improved calling convention tester can be used to verify calling conventions within a compiler, verify that no compiler changes break ABI (Application Binary Interface) integrity between different versions of a compiler, and even test for calling convention consistency between completely different compilers.

SuperTest’s section traceability - the report that details how each individual test matches the language standard - has been extended to cover all versions of C, including C18, and C++ up to C++17.

This update is designed to make it easier to manage multiple installs of different versions in the same Windows operating system environment, allowing users to run SuperTest and SuperGuard (Solid Sands’ C Library Safety Qualification Suite), or multiple SuperTest versions, on the same machine.

SuperTest Vermeer Release Update #3 is available now.

For more information, visit: www.solidsands.nl

Tiera Oliver, Associate Editor for Embedded Computing Design, is responsible for web content edits, product news, and constructing stories. She also assists with newsletter updates as well as contributing and editing content for ECD podcasts and the ECD YouTube channel. Before working at ECD, Tiera graduated from Northern Arizona University where she received her B.S. in journalism and political science and worked as a news reporter for the university’s student led newspaper, The Lumberjack.

More from Tiera