GCC Newspaper
OCTOBER 6, 2026
Date
/
Architectures
Components
Topics
News & Policy
Other
testsuite

Testsuite: Do not leave a truncated summary behind.

Fixes parallel testsuite runs to correctly merge and preserve test summaries, preventing data loss and false positives.

Parallel testsuite runs previously truncated summary files before merging them, leading to data loss if the merge failed and leaving the tree with empty summaries. This commit modifies the process to merge summaries only from instances that successfully produced one, clearly warns about missing summaries, and uses temporary files for the merge. A failed merge now correctly reports an error, ensuring the integrity of test results.

In Details

The parallel test execution infrastructure's summary merging logic in dg-extract-results.sh had two flaws: redirection (>) truncated the target summary file before merging, and the script did not check the exit status of the merge command. This commit rectifies this by only merging extant summary files, writing merged output to a temporary file, and promoting a merge failure to a build failure. This prevents data loss and ensures that failures in individual test runs are accurately reported.

For Context
runtest
The primary script used by GCC's testsuite to execute individual test cases and collect their results.
summary file
A file generated by a test run containing information about the test's success or failure, used for aggregating results in parallel test execution.
Filed Under: testsuiteparallel executionbuild system