On Thu, 6 Mar 2025 at 11:36, Giuseppe D'Angelo <giuseppe.dang...@kdab.com> wrote: > > Hi, > > On 06/03/2025 12:26, Jonathan Wakely wrote: > > The old COW std::string is not usable in constant expressions, so these > > new tests fail with -D_GLIBCXX_USE_CXX11_ABI=0. > > LGTM; is there a specific incantation to run the testsuite with both > libstdc++ ABIs? Clearly I just tested the new one...
You can use: make check RUNTESTFLAGS="--target_board=unix\{,-D_GLIBCXX_USE_CXX11_ABI=0\}" I do it a little differently, using the ~/.dejagnurc file below which runs every test for every -std option from 98 to 26, and with assertions enabled, with the old ABI, and with -m32. This takes about 20 times longer than normal to run the tests, so choose wisely! # Need to test if $tool exists prior to the r11-551 change. if { [info exists tool] && "$tool" == "libstdc++" } { global tool_timeout set tool_timeout 90 puts "dejagnu - timeout default set to ${tool_timeout}s" if { [info exists v3-use-std-list] } { # v3-dg-runtest supports running tests with multiple -std options. set v3_std_list { 98 11 14 17 20 23 26 } set target_list { "unix{-D_GLIBCXX_ASSERTIONS,-D_GLIBCXX_USE_CXX11_ABI=0,-m32}" } } else { # set target_list { "unix{,-m32/-D_GLIBCXX_USE_CXX11_ABI=0,-std=gnu++23}" } set target_list { "unix{,-D_GLIBCXX_USE_CXX11_ABI=0,-std=gnu++2b,-std=gnu++11}" } } }