When running the testsuite under Windows, we noticed failures in
testcase which attempt to match compiler error messages containing the
name of the executable.

For instance, gcc.dg/analyzer/signal-4a.c tries to match 'cc1:' which
obviously fails when the executable is called cc1.exe.

This patch removes the .exe suffix from various toolchain executables
to avoid this problem.

2021-09-08  Christophe Lyon  <christophe.l...@foss.st.com>
            Torbjörn SVENSSON <torbjorn.svens...@st.com>

        gcc/testsuite/
        * lib/prune.exp (prune_gcc_output): Remove .exe suffix from
        toolchain executables names.
---
 gcc/testsuite/lib/prune.exp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gcc/testsuite/lib/prune.exp b/gcc/testsuite/lib/prune.exp
index 91f165bec38..fac212ecf60 100644
--- a/gcc/testsuite/lib/prune.exp
+++ b/gcc/testsuite/lib/prune.exp
@@ -37,6 +37,9 @@ proc prune_gcc_output { text } {
     # Handle any freeform regexps.
     set text [handle-dg-regexps $text]
 
+    # Remove Windows .exe suffix
+    regsub -all "(as|cc1|cc1plus|collect2|f951|ld|lto-wrapper)\.exe?:" $text 
{\1:} text
+
     regsub -all "(^|\n)(\[^\n\]*: \[iI\]|I)n ((static member |lambda 
)?function|member|method|(copy 
)?constructor|destructor|instantiation|substitution|program|subroutine|block-data)\[^\n\]*"
 $text "" text
     regsub -all "(^|\n)\[^\n\]*(: )?At (top level|global scope):\[^\n\]*" 
$text "" text
     regsub -all "(^|\n)\[^\n\]*:   (recursively )?required \[^\n\]*" $text "" 
text
-- 
2.25.1

Reply via email to