GCC Newspaper
JULY 29, 2026
Date
/
Architectures
Components
Topics
News & Policy
libstdc++

Fix libstdc++ testsuite parallelization with uninstalled compilers.

Libstdc++ testsuite logic deduplicated to fix parallelization issues with uninstalled compilers.

This commit corrects an issue in the libstdc++ testsuite’s parallelization logic that was inadvertently introduced in a previous change. The problem arose from duplicated test filtering functions in both gcc-defs.exp and libstdc++‘s test utilities, causing a test partition counter to be incremented twice. This revision removes the libstdc++-specific copy and ensures that necessary GCC testsuite definitions are loaded at the correct point.

In Details

The libstdc++ testsuite's parallelization mechanism, specifically the runtest_file_p filter and gcc-defs.exp's gcc_parallelize_saved_runtest_file_p, had a bug. Both gcc-defs and libstdc++ independently defined a function to check if a test falls within a given parallelization partition. This led to double-counting partitions. The fix removes the libstdc++ definition, relying solely on the one in gcc-defs.exp, and also adjusts the loading order of test suite utility files to prevent symbol conflicts.

For Context
testsuite
A collection of test programs and scripts used to verify the correctness of a software project, such as GCC or its libraries.
parallelization
The technique of running multiple test cases concurrently to reduce the overall testing time.
gcc-defs.exp
A Tcl script used in the GCC testsuite that defines common testing utilities and variables.
Filed Under: testinglibstdc++regression