Bullseye Testing Technology

What's New with BullseyeCoverage

Version 8.20 Released October 2020

We added additional information to our XML format export to assist with importing data into products that cannot understand condition/decision coverage, but can understand statement coverage.

Version 8.19 Released August 2020

Compiling Linux kernel modules now requires no special configuration settings. Run-time error diagnostics are improved.

BullseyeCoverage is available to run on Linux on ARM64 (natively). We dropped support for Embarcadero/CodeGear/Borland C++.

We added support for:

Version 8.18 Released April 2020

On macOS, integration with Xcode is now performed automatically by the install and uninstall programs. We added additional support for the upcoming C++20 standard. Support for FreeBSD was dropped.

Version 8.17 Released January 2020

We added the Coverage Browser command Region Delete to allow completely and permanently removing data for obsolete project source files that were deleted. The Coverage Browser has improved logic for locating source files.

We added support for:

Version 8.16 Released October 2019

We added some support for the upcoming C++20 standard including __has_cpp_attribute, concepts, and the comparison operator <=>.

We improved the representation of function names containing parameter array dimensions, unnamed namespaces, and template non-type parameters.

On Windows, we improved speed of the the Coverage Browser Edit Copy command for HTML format.

The BullseyeCoverageEnv.txt file supports very large variable settings.

The small footprint run-time has better multi-processor support.

We added or updated support for the tools below.

We dropped support for the tools and systems below.

Version 8.15 Released August 2018

We improved measurement retention and merging for conditionally compiled functions.

The Microsoft C++ option /experimental:preprocessor is supported.

Windows CE 8 / 2013 on ARMv7 is supported.

For embedded systems, BullseyeCoveage does not require DATA sections to be initialized.

Version 8.14 Released March 2018

For embedded systems, BullseyeCoveage now automatically handles uninitialized BSS sections, a common restriction. Stack usage was decreased.

covhtml exposes non-frame views for better compatibility with some continuous integration systems.

We support the C++17 official standard.

We added or updated support for the tools and systems below.

Version 8.13 Released November 2016

BullseyeCoverage supports all features in the C++17 draft N4606 dated 2016-07-12.

Version 8.12 Released October 2016

A new exclusion directive 'ignore' is added as a convenient shorthand for excluding a small number of source code lines.

We improved support for non-ASCII characters, particularly in filenames.

Support for ARC MetaWare Toolkit was freshened

Version 8.11 Released August 2016

This minor release adds covc option --mspp which makes it easier to work around compatibility problems with the Microsoft C++ macro preprocessor.

We added or updated support for the tools and systems below.

Version 8.10 Released March, 2016

This release adds 64-bit executables for Windows, which alleviate address space limitations. We added support for C++14 We improved internationalization and wide character support. The small footprint run-time configuration produces much smaller data files. We improved performance for merging coverage files.

We added or updated support for the tools and technologies below.

Version 8.9 Released March, 2014

This release adds support for a multi-level directory wildcard **. Additionally, the improvements below were added.

Version 8.8 Released October, 2013

We improved the compiler integration interface and added it to the Coverage Browser Options dialog. Run-time i/o performance is improved. For most embedded systems, the run-time is built automatically, using the small footprint run-time configuration.

We added or updated support for the tools and processors below.

Version 8.7 Released June, 2012

The small footprint run-time for embedded systems supports multiple threads and processes.

We added support for the compilers and platforms below.

Version 8.6 Released May, 2012

The covmerge command has a new option --mp that can dramatically reduce time by utilizing multiple processors. We updated support for QNX.

Version 8.5 Released, May 2012

We added support for C++11 and C11. The XML output has provision for stylesheets. We improved multiprocessor utilization during building. You can clear measurements with finer granularity.

We added or improved support for the products below.

Version 8.4 Released, October 2011

Operator sizeof and other operators with type-id operands such as __is_pod are considered not constant when they occur within a template. These expressions may vary across different instantiations.

We added support for the processors and compilers below.

Version 8.3 Released, August 2011

Our embedded system support now uses a small foot print run-time library that is small enough to run on 8-bit and 16-bit processors, and has simpler implementation requirements.

Version 8.2 Released, July 2011

The covhtml command adds HTML output that you can browse and sort similarly to the Coverage Browser.

Version 8.1 Released, May 2011

This release adds support for additional C++0x syntax including the range-based for statement, which required updating the coverage file format.

We increased compatibility with the overloaded operators && and || which behave like the built-in operators, for example the Boost tribool class.

The instrumentation data was reorganized to use a read-only data section, rather than initialized read-write data. This protects much of the run-time data from corruption and simplifies linker configuration for embedded systems.

We improved support for the environments and tools below.

Version 8.0 Released, Oct 2010

We increased the granularity for detecting modified code, from the source file level to the function level. When you measure coverage of a project and then modify a function, the measurements are reset for only that function, rather than the whole source file containing the function. This feature applies to coverage data files written by version 7.12.3 or later.