Message ID | 20221116021154.4AE372042F@pchp3.se.axis.com |
---|---|
State | Committed |
Commit | e91d51457532da6c2179b23359435f06d89488e7 |
Headers |
Return-Path: <gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A72F53954407 for <patchwork@sourceware.org>; Wed, 16 Nov 2022 02:12:27 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A72F53954407 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1668564747; bh=mjLmq9dp6oh/S7s2m2Vl5oRraF+bSt4DzPpq5P2rEnU=; h=To:CC:In-Reply-To:Subject:References:Date:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=ju2mrkH9y7fjCy8HmaJic/fwcmH3znmhKovrxQrZ0dOLc8qzWJFLBGZNSwcTW6hDW e+RMizJigKg6b/x9aQAwEKMooJSQwy6METgnzrQzehlMOikCkgL4F+NlWM34su3wrH SXscWdMNGon1dKVmGBNc56n3oJRnxP/NJTc9oFEg= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from smtp1.axis.com (smtp1.axis.com [195.60.68.17]) by sourceware.org (Postfix) with ESMTPS id 1B9023896C20 for <gcc-patches@gcc.gnu.org>; Wed, 16 Nov 2022 02:11:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1B9023896C20 To: <gcc-patches@gcc.gnu.org>, Torbjorn SVENSSON <torbjorn.svensson@foss.st.com> CC: <mikestump@comcast.net> In-Reply-To: <aba82146-93c4-3e7b-57ba-75bc2a97427e@foss.st.com> (message from Torbjorn SVENSSON via Gcc-patches on Mon, 12 Sep 2022 11:39:44 +0200) Subject: [PATCH] testsuite: Fix mistransformed gcov MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8BIT References: <20220909125624.2561867-1-torbjorn.svensson@foss.st.com> <a9fcb3b8-e583-5512-3825-d37b3e97feef@orange.fr> <662abb45-dad9-f0f7-4af6-940829d648a6@foss.st.com> <e07116fb-3dc2-47fa-1051-797bd535a56e@orange.fr> <54513c03-1421-b480-fc6b-2229e811396b@foss.st.com> <be362d0c-fe27-8b44-4dcc-103e299d16b1@suse.cz> <aba82146-93c4-3e7b-57ba-75bc2a97427e@foss.st.com> Message-ID: <20221116021154.4AE372042F@pchp3.se.axis.com> Date: Wed, 16 Nov 2022 03:11:54 +0100 X-Spam-Status: No, score=-10.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe> List-Archive: <https://gcc.gnu.org/pipermail/gcc-patches/> List-Post: <mailto:gcc-patches@gcc.gnu.org> List-Help: <mailto:gcc-patches-request@gcc.gnu.org?subject=help> List-Subscribe: <https://gcc.gnu.org/mailman/listinfo/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> From: Hans-Peter Nilsson via Gcc-patches <gcc-patches@gcc.gnu.org> Reply-To: Hans-Peter Nilsson <hp@axis.com> Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" <gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org> |
Series |
testsuite: Fix mistransformed gcov
|
|
Commit Message
Hans-Peter Nilsson
Nov. 16, 2022, 2:11 a.m. UTC
How was r13-2619-g34b9a03353d3fd "gcov: Respect triplet when looking for gcov" tested? I'm having a hard time believing it was tested with a *cross-compiler* *in-build-tree*. I think it was only tested for the special-case of an installed cross-compiler; not even with a native build exercising the false branch (see patch), considering that a breaking typo ("}" vs "]") snuck by in the first revision, before commit. I guess reviewers forgot to ask that, but it's really on the submitter; it's a general requirement for patches to say how it was tested. Usually no more is needed than "tested with a cross-compiler for ..., no regressions" (implying running twice and comparing results before and after the patch). In this case, when adjusting test-framework bits, a little more care and mentioned details about how it was tested, would have been in order. It's likely it'd have shown that an uninstalled in-tree cross (an IMHO more expected case) wasn't tested, which that patch broke for the one gcov invocation that the testsuite does for cross-builds (IIUC). It can be said like this: I tested *this* patch as follows (all directory names below manually redacted), showing no regressions and fixing the regression for the in-tree cross build; For a native build (x86_64, Debian 11): - In the gcc build directory: make check RUNTESTFLAGS=gcov.exp - In an empty new directory after native installation in /pre. /gccsrc/top/contrib/test_installed --prefix=/pre gcov.exp - Also, for good measure (mentioned somewhere in the installation documentation) native: for tool in gcc g++ ; do env PATH=/pre/bin:$PATH runtest \ --tool $tool --srcdir=/gccsrc/top/gcc/testsuite gcov.exp; done For a cris-elf cross: - In the gcc build directory: make check 'RUNTESTFLAGS=--target_board=cris-sim gcov.exp' - In an empty new directory after installation in /pre. /gccsrc/top/contrib/test_installed --with-gcc=/pre/bin/cris-elf-gcc \ --with-g++=/pre/bin/cris-elf-g++ --with-gfortran=/pre/bin/cris-elf-gfortran \ --target=cris-elf --target_board=cris-sim gcov.exp Ok to commit? brgds, H-P PS. Beware that the proc name may be up for bikeshedding. ---- 8< -------- 8< -------- 8< -------- 8< ---- In commit r13-2619-g34b9a03353d3fd, [transform] was applied to all invocations of gcov, for both out-of-tree and in-tree testing. For in-tree cross builds, this means gcov was called as "/path/to/gccobj/gcc/target-tuple-gcov" gcov-pr94029.c which is incorrect, as it's there "/path/to/gccobj/gcc/gcov" until it's installed. This caused a testsuite failure, like: Running /x/gcc/gcc/testsuite/gcc.misc-tests/gcov.exp ... FAIL: gcc.misc-tests/gcov-pr94029.c gcov failed: spawn failed To avoid cumbersome conditionals, use a dedicated new helper function. gcc/testsuite: * lib/gcc-dg.exp (gcc-transform-out-of-tree): New proc. * g++.dg/gcov/gcov.exp, gcc.misc-tests/gcov.exp: Call gcc-transform-out-of-tree instead of transform. --- gcc/testsuite/g++.dg/gcov/gcov.exp | 4 ++-- gcc/testsuite/gcc.misc-tests/gcov.exp | 4 ++-- gcc/testsuite/lib/gcc-dg.exp | 13 +++++++++++++ 3 files changed, 17 insertions(+), 4 deletions(-)
Comments
Hi, On 2022-11-16 03:11, Hans-Peter Nilsson wrote: > How was r13-2619-g34b9a03353d3fd "gcov: Respect triplet when looking > for gcov" tested? I'm having a hard time believing it was tested with > a *cross-compiler* *in-build-tree*. I think it was only tested for > the special-case of an installed cross-compiler; not even with a > native build exercising the false branch (see patch), considering that > a breaking typo ("}" vs "]") snuck by in the first revision, before > commit. I was testing this in out-of-tree test with a cross-compiler (built for arm-none-eabi) running on Windows and Linux and just noticed the failure and (wrongly) assumed that all of the cases needed the transformation call as that's how other tools were handled. The test systems used is are hosts that does not have any internet connection, so that's why I got a typo in the first patch when moving the fix to a system that did have an internet connection. Sorry for the mess I caused! Regarding the patch you propose; it looks good to me, but I'm not able to approve it. Kind regards, Torbjörn > I guess reviewers forgot to ask that, but it's really on the > submitter; it's a general requirement for patches to say how it was > tested. Usually no more is needed than "tested with a cross-compiler > for ..., no regressions" (implying running twice and comparing results > before and after the patch). > > In this case, when adjusting test-framework bits, a little more care > and mentioned details about how it was tested, would have been in > order. It's likely it'd have shown that an uninstalled in-tree cross > (an IMHO more expected case) wasn't tested, which that patch broke for > the one gcov invocation that the testsuite does for cross-builds > (IIUC). > > It can be said like this: I tested *this* patch as follows (all > directory names below manually redacted), showing no regressions and > fixing the regression for the in-tree cross build; > > For a native build (x86_64, Debian 11): > - In the gcc build directory: > make check RUNTESTFLAGS=gcov.exp > > - In an empty new directory after native installation in /pre. > /gccsrc/top/contrib/test_installed --prefix=/pre gcov.exp > > - Also, for good measure (mentioned somewhere in the installation > documentation) native: > for tool in gcc g++ ; do env PATH=/pre/bin:$PATH runtest \ > --tool $tool --srcdir=/gccsrc/top/gcc/testsuite gcov.exp; done > > For a cris-elf cross: > - In the gcc build directory: > make check 'RUNTESTFLAGS=--target_board=cris-sim gcov.exp' > > - In an empty new directory after installation in /pre. > /gccsrc/top/contrib/test_installed --with-gcc=/pre/bin/cris-elf-gcc \ > --with-g++=/pre/bin/cris-elf-g++ --with-gfortran=/pre/bin/cris-elf-gfortran \ > --target=cris-elf --target_board=cris-sim gcov.exp > > Ok to commit? > > brgds, H-P > PS. Beware that the proc name may be up for bikeshedding. > > ---- 8< -------- 8< -------- 8< -------- 8< ---- > > In commit r13-2619-g34b9a03353d3fd, [transform] was applied to all > invocations of gcov, for both out-of-tree and in-tree testing. > For in-tree cross builds, this means gcov was called as > "/path/to/gccobj/gcc/target-tuple-gcov" gcov-pr94029.c which is > incorrect, as it's there "/path/to/gccobj/gcc/gcov" until it's > installed. This caused a testsuite failure, like: > > Running /x/gcc/gcc/testsuite/gcc.misc-tests/gcov.exp ... > FAIL: gcc.misc-tests/gcov-pr94029.c gcov failed: spawn failed > > To avoid cumbersome conditionals, use a dedicated new helper function. > > gcc/testsuite: > * lib/gcc-dg.exp (gcc-transform-out-of-tree): New proc. > * g++.dg/gcov/gcov.exp, gcc.misc-tests/gcov.exp: Call > gcc-transform-out-of-tree instead of transform. > --- > gcc/testsuite/g++.dg/gcov/gcov.exp | 4 ++-- > gcc/testsuite/gcc.misc-tests/gcov.exp | 4 ++-- > gcc/testsuite/lib/gcc-dg.exp | 13 +++++++++++++ > 3 files changed, 17 insertions(+), 4 deletions(-) > > diff --git a/gcc/testsuite/g++.dg/gcov/gcov.exp b/gcc/testsuite/g++.dg/gcov/gcov.exp > index 04e7a0164865..c9f20958836b 100644 > --- a/gcc/testsuite/g++.dg/gcov/gcov.exp > +++ b/gcc/testsuite/g++.dg/gcov/gcov.exp > @@ -24,9 +24,9 @@ global GXX_UNDER_TEST > > # Find gcov in the same directory as $GXX_UNDER_TEST. > if { ![is_remote host] && [string match "*/*" [lindex $GXX_UNDER_TEST 0]] } { > - set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[transform gcov] > + set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] > } else { > - set GCOV [transform gcov] > + set GCOV [gcc-transform-out-of-tree gcov] > } > > # Initialize harness. > diff --git a/gcc/testsuite/gcc.misc-tests/gcov.exp b/gcc/testsuite/gcc.misc-tests/gcov.exp > index b8e9661aa537..90ceec46e0f0 100644 > --- a/gcc/testsuite/gcc.misc-tests/gcov.exp > +++ b/gcc/testsuite/gcc.misc-tests/gcov.exp > @@ -24,9 +24,9 @@ global GCC_UNDER_TEST > > # For now find gcov in the same directory as $GCC_UNDER_TEST. > if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { > - set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[transform gcov] > + set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] > } else { > - set GCOV [transform gcov] > + set GCOV [gcc-transform-out-of-tree gcov] > } > > # Initialize harness. > diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp > index 23ec038f41eb..2910c9ce0998 100644 > --- a/gcc/testsuite/lib/gcc-dg.exp > +++ b/gcc/testsuite/lib/gcc-dg.exp > @@ -1429,5 +1429,18 @@ proc scan-symbol-not { args } { > } > } > > +# Transform a tool-name to its canonical-target-name by "transform" > +# (which may return the original name for native targets) but only if > +# testing out-of-tree. When in-tree, the tool is expected to be found > +# by its original name, typically with some build-directory prefix > +# prepended by the caller. > +proc gcc-transform-out-of-tree { args } { > + global TESTING_IN_BUILD_TREE > + if { [info exists TESTING_IN_BUILD_TREE] } { > + return $args; > + } > + return [transform $args] > +} > + > set additional_prunes "" > set dg_runtest_extra_prunes ""
On Wed, Nov 16, 2022 at 9:00 AM Torbjorn SVENSSON via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > > Hi, > > On 2022-11-16 03:11, Hans-Peter Nilsson wrote: > > How was r13-2619-g34b9a03353d3fd "gcov: Respect triplet when looking > > for gcov" tested? I'm having a hard time believing it was tested with > > a *cross-compiler* *in-build-tree*. I think it was only tested for > > the special-case of an installed cross-compiler; not even with a > > native build exercising the false branch (see patch), considering that > > a breaking typo ("}" vs "]") snuck by in the first revision, before > > commit. > > I was testing this in out-of-tree test with a cross-compiler (built for > arm-none-eabi) running on Windows and Linux and just noticed the failure > and (wrongly) assumed that all of the cases needed the transformation > call as that's how other tools were handled. > The test systems used is are hosts that does not have any internet > connection, so that's why I got a typo in the first patch when moving > the fix to a system that did have an internet connection. > Sorry for the mess I caused! > > Regarding the patch you propose; it looks good to me, but I'm not able > to approve it. The patch is OK. Richard. > Kind regards, > Torbjörn > > > I guess reviewers forgot to ask that, but it's really on the > > submitter; it's a general requirement for patches to say how it was > > tested. Usually no more is needed than "tested with a cross-compiler > > for ..., no regressions" (implying running twice and comparing results > > before and after the patch). > > > > In this case, when adjusting test-framework bits, a little more care > > and mentioned details about how it was tested, would have been in > > order. It's likely it'd have shown that an uninstalled in-tree cross > > (an IMHO more expected case) wasn't tested, which that patch broke for > > the one gcov invocation that the testsuite does for cross-builds > > (IIUC). > > > > It can be said like this: I tested *this* patch as follows (all > > directory names below manually redacted), showing no regressions and > > fixing the regression for the in-tree cross build; > > > > For a native build (x86_64, Debian 11): > > - In the gcc build directory: > > make check RUNTESTFLAGS=gcov.exp > > > > - In an empty new directory after native installation in /pre. > > /gccsrc/top/contrib/test_installed --prefix=/pre gcov.exp > > > > - Also, for good measure (mentioned somewhere in the installation > > documentation) native: > > for tool in gcc g++ ; do env PATH=/pre/bin:$PATH runtest \ > > --tool $tool --srcdir=/gccsrc/top/gcc/testsuite gcov.exp; done > > > > For a cris-elf cross: > > - In the gcc build directory: > > make check 'RUNTESTFLAGS=--target_board=cris-sim gcov.exp' > > > > - In an empty new directory after installation in /pre. > > /gccsrc/top/contrib/test_installed --with-gcc=/pre/bin/cris-elf-gcc \ > > --with-g++=/pre/bin/cris-elf-g++ --with-gfortran=/pre/bin/cris-elf-gfortran \ > > --target=cris-elf --target_board=cris-sim gcov.exp > > > > Ok to commit? > > > > brgds, H-P > > PS. Beware that the proc name may be up for bikeshedding. > > > > ---- 8< -------- 8< -------- 8< -------- 8< ---- > > > > In commit r13-2619-g34b9a03353d3fd, [transform] was applied to all > > invocations of gcov, for both out-of-tree and in-tree testing. > > For in-tree cross builds, this means gcov was called as > > "/path/to/gccobj/gcc/target-tuple-gcov" gcov-pr94029.c which is > > incorrect, as it's there "/path/to/gccobj/gcc/gcov" until it's > > installed. This caused a testsuite failure, like: > > > > Running /x/gcc/gcc/testsuite/gcc.misc-tests/gcov.exp ... > > FAIL: gcc.misc-tests/gcov-pr94029.c gcov failed: spawn failed > > > > To avoid cumbersome conditionals, use a dedicated new helper function. > > > > gcc/testsuite: > > * lib/gcc-dg.exp (gcc-transform-out-of-tree): New proc. > > * g++.dg/gcov/gcov.exp, gcc.misc-tests/gcov.exp: Call > > gcc-transform-out-of-tree instead of transform. > > --- > > gcc/testsuite/g++.dg/gcov/gcov.exp | 4 ++-- > > gcc/testsuite/gcc.misc-tests/gcov.exp | 4 ++-- > > gcc/testsuite/lib/gcc-dg.exp | 13 +++++++++++++ > > 3 files changed, 17 insertions(+), 4 deletions(-) > > > > diff --git a/gcc/testsuite/g++.dg/gcov/gcov.exp b/gcc/testsuite/g++.dg/gcov/gcov.exp > > index 04e7a0164865..c9f20958836b 100644 > > --- a/gcc/testsuite/g++.dg/gcov/gcov.exp > > +++ b/gcc/testsuite/g++.dg/gcov/gcov.exp > > @@ -24,9 +24,9 @@ global GXX_UNDER_TEST > > > > # Find gcov in the same directory as $GXX_UNDER_TEST. > > if { ![is_remote host] && [string match "*/*" [lindex $GXX_UNDER_TEST 0]] } { > > - set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[transform gcov] > > + set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] > > } else { > > - set GCOV [transform gcov] > > + set GCOV [gcc-transform-out-of-tree gcov] > > } > > > > # Initialize harness. > > diff --git a/gcc/testsuite/gcc.misc-tests/gcov.exp b/gcc/testsuite/gcc.misc-tests/gcov.exp > > index b8e9661aa537..90ceec46e0f0 100644 > > --- a/gcc/testsuite/gcc.misc-tests/gcov.exp > > +++ b/gcc/testsuite/gcc.misc-tests/gcov.exp > > @@ -24,9 +24,9 @@ global GCC_UNDER_TEST > > > > # For now find gcov in the same directory as $GCC_UNDER_TEST. > > if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { > > - set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[transform gcov] > > + set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] > > } else { > > - set GCOV [transform gcov] > > + set GCOV [gcc-transform-out-of-tree gcov] > > } > > > > # Initialize harness. > > diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp > > index 23ec038f41eb..2910c9ce0998 100644 > > --- a/gcc/testsuite/lib/gcc-dg.exp > > +++ b/gcc/testsuite/lib/gcc-dg.exp > > @@ -1429,5 +1429,18 @@ proc scan-symbol-not { args } { > > } > > } > > > > +# Transform a tool-name to its canonical-target-name by "transform" > > +# (which may return the original name for native targets) but only if > > +# testing out-of-tree. When in-tree, the tool is expected to be found > > +# by its original name, typically with some build-directory prefix > > +# prepended by the caller. > > +proc gcc-transform-out-of-tree { args } { > > + global TESTING_IN_BUILD_TREE > > + if { [info exists TESTING_IN_BUILD_TREE] } { > > + return $args; > > + } > > + return [transform $args] > > +} > > + > > set additional_prunes "" > > set dg_runtest_extra_prunes ""
diff --git a/gcc/testsuite/g++.dg/gcov/gcov.exp b/gcc/testsuite/g++.dg/gcov/gcov.exp index 04e7a0164865..c9f20958836b 100644 --- a/gcc/testsuite/g++.dg/gcov/gcov.exp +++ b/gcc/testsuite/g++.dg/gcov/gcov.exp @@ -24,9 +24,9 @@ global GXX_UNDER_TEST # Find gcov in the same directory as $GXX_UNDER_TEST. if { ![is_remote host] && [string match "*/*" [lindex $GXX_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[transform gcov] + set GCOV [file dirname [lindex $GXX_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] } else { - set GCOV [transform gcov] + set GCOV [gcc-transform-out-of-tree gcov] } # Initialize harness. diff --git a/gcc/testsuite/gcc.misc-tests/gcov.exp b/gcc/testsuite/gcc.misc-tests/gcov.exp index b8e9661aa537..90ceec46e0f0 100644 --- a/gcc/testsuite/gcc.misc-tests/gcov.exp +++ b/gcc/testsuite/gcc.misc-tests/gcov.exp @@ -24,9 +24,9 @@ global GCC_UNDER_TEST # For now find gcov in the same directory as $GCC_UNDER_TEST. if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { - set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[transform gcov] + set GCOV [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcov] } else { - set GCOV [transform gcov] + set GCOV [gcc-transform-out-of-tree gcov] } # Initialize harness. diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp index 23ec038f41eb..2910c9ce0998 100644 --- a/gcc/testsuite/lib/gcc-dg.exp +++ b/gcc/testsuite/lib/gcc-dg.exp @@ -1429,5 +1429,18 @@ proc scan-symbol-not { args } { } } +# Transform a tool-name to its canonical-target-name by "transform" +# (which may return the original name for native targets) but only if +# testing out-of-tree. When in-tree, the tool is expected to be found +# by its original name, typically with some build-directory prefix +# prepended by the caller. +proc gcc-transform-out-of-tree { args } { + global TESTING_IN_BUILD_TREE + if { [info exists TESTING_IN_BUILD_TREE] } { + return $args; + } + return [transform $args] +} + set additional_prunes "" set dg_runtest_extra_prunes ""