On 3/30/23 09:51, Alexandre Oliva wrote:
On Mar 30, 2023, Alexandre Oliva <ol...@adacore.com> wrote:

If we're dropping the renaming, I suppose we could also revert Jakub's
change.  I suppose this patch will take care of it, pending testing...

Regstrapped on x86_64-linux-gnu and also tested on arm-vx7r2 (with
gcc-12), where I used to get fails after an unsupported modules.exp
test, but there are no curly braces in the log files after the patch.
Ok to install?


[PR108899] testsuite: fix proc unsupported overriding in modules.exp

The [PR] tag should go at the end of the subject line, not the start. OK with that change.

The overrider of proc unsupported in modules.exp had two problems
reported by Thomas Schwinge, even after Jakub JelĂ­nek's fix:

- it remained in effect while running other dejagnu testsets

- it didn't quote correctly the argument list passed to it, which
   caused test names to be surrounded by curly braces, as in:

UNSUPPORTED: {...}

This patch fixes both issues, obsoleting and reverting Jakub's change,
by dropping the overrider and renaming the saved proc back, and by
using uplevel's argument list splicing.


for  gcc/testsuite/ChangeLog

        PR testsuite/108899
        * g++.dg/modules/modules.exp (unsupported): Drop renaming.
        Fix quoting.
---
  gcc/testsuite/g++.dg/modules/modules.exp |   20 +++++++++++---------
  1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/gcc/testsuite/g++.dg/modules/modules.exp 
b/gcc/testsuite/g++.dg/modules/modules.exp
index 80aa392bc7f3b..dc302d3d0af48 100644
--- a/gcc/testsuite/g++.dg/modules/modules.exp
+++ b/gcc/testsuite/g++.dg/modules/modules.exp
@@ -319,15 +319,11 @@ cleanup_module_files [find $DEFAULT_REPO *.gcm]
  # so that, after an unsupported result in dg-test, we can skip rather
  # than fail subsequent related tests.
  set module_do {"compile" "P"}
-if { [info procs unsupported] != [list] \
-      && [info procs saved-unsupported] == [list] } {
-    rename unsupported saved-unsupported
-
-    proc unsupported { args } {
-       global module_do
-       lset module_do 1 "N"
-       return [saved-unsupported $args]
-    }
+rename unsupported modules-saved-unsupported
+proc unsupported { args } {
+    global module_do
+    lset module_do 1 "N"
+    return [uplevel 1 modules-saved-unsupported $args]
  }
# not grouped tests, sadly tcl doesn't have negated glob
@@ -412,4 +408,10 @@ foreach src [lsort [find $srcdir/$subdir {*_a.[CHX}]] {
      }
  }
+# Restore the original unsupported proc, lest it will affect
+# subsequent test runs, or even fail renaming if we run modules.exp
+# for multiple targets/multilibs/options.
+rename unsupported {}
+rename modules-saved-unsupported unsupported
+
  dg-finish



Reply via email to