https://gcc.gnu.org/g:fce02baff53bbcb673f41ea18668103edb2f7c00

commit r15-4109-gfce02baff53bbcb673f41ea18668103edb2f7c00
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Mon Oct 7 13:03:02 2024 +0100

    testsuite: Unset torture_current_flags after use
    
    Before running a test with specific torture options, gcc-dg-runtest
    sets the global variable torture_current_flags to the set of torture
    options that will be used.  However, it never unset the variable
    afterwards, which meant that the last options would hang around
    and potentially confuse later non-torture tests.
    
    I saw this with a follow-on patch to check-function-bodies, but it's
    probably possible to construct aritificial test combinations that
    expose it with check-function-bodies's existing flag filtering.
    
    gcc/testsuite/
            * lib/gcc-dg.exp (gcc-dg-runtest): Unset torture_current_flags
            after each test.

Diff:
---
 gcc/testsuite/lib/gcc-dg.exp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gcc/testsuite/lib/gcc-dg.exp b/gcc/testsuite/lib/gcc-dg.exp
index cb401a704359..7adca02f9377 100644
--- a/gcc/testsuite/lib/gcc-dg.exp
+++ b/gcc/testsuite/lib/gcc-dg.exp
@@ -628,6 +628,7 @@ proc gcc-dg-runtest { testcases flags default-extra-flags } 
{
            set torture_current_flags "$flags_t"
            verbose "Testing $nshort, $flags $flags_t" 1
            dg-test $test "$flags $flags_t" ${default-extra-flags}
+           unset torture_current_flags
        }
     }

Reply via email to