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

commit r16-7058-gc86745f4f6e57ac5bd3d399f294860753bcbaa11
Author: Frank Scheiner <[email protected]>
Date:   Mon Jan 12 10:48:58 2026 +0100

    testsuite: only test with LTO if LTO support is actually configured
    
    Bootstrapping GCC (c, c++) on ia64 w/o support for LTO ([1]) showed that
    the testsuite (specifically c-c++-common/guality) executes tests with
    `-flto` although there was no support for LTO configured.
    
    [1]: https://gcc.gnu.org/pipermail/gcc-testresults/2025-December/865397.html
    
    This is because [...]/guality.exp adds test permutations w/`-flto`
    unconditionally. Fix that by checking for LTO support and drop
    permutations w/`-flto` if unsupported.
    
    Fixes r10-2142-gec8ac265ff21fb as per [2].
    
    [2]: https://gcc.gnu.org/pipermail/gcc-patches/2026-January/705638.html
    
    gcc/testsuite/ChangeLog:
            * gcc.dg/guality/guality.exp: Only test with LTO if supported.
            * g++.dg/guality/guality.exp: Likewise.
    
    Signed-off-by: Frank Scheiner <[email protected]>

Diff:
---
 gcc/testsuite/g++.dg/guality/guality.exp | 9 ++++++++-
 gcc/testsuite/gcc.dg/guality/guality.exp | 9 ++++++++-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/g++.dg/guality/guality.exp 
b/gcc/testsuite/g++.dg/guality/guality.exp
index a46f8465a33c..7f1e7b23a608 100644
--- a/gcc/testsuite/g++.dg/guality/guality.exp
+++ b/gcc/testsuite/g++.dg/guality/guality.exp
@@ -93,10 +93,17 @@ if {[check_guality "
 
     gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.C]] "" ""
     gcc-dg-runtest $general "" ""
+
+    if [check_effective_target_lto] {
+        set lto_option_list [list "-Og -flto"]
+    } else {
+        set lto_option_list ""  
+    }
+
     set-torture-options \
        [list "-O0" "-Og"] \
        [list {}] \
-       [list "-Og -flto"]
+       $lto_option_list
     gcc-dg-runtest $Og "" ""
 }
 
diff --git a/gcc/testsuite/gcc.dg/guality/guality.exp 
b/gcc/testsuite/gcc.dg/guality/guality.exp
index 5c892c15479f..c38ae8899bc0 100644
--- a/gcc/testsuite/gcc.dg/guality/guality.exp
+++ b/gcc/testsuite/gcc.dg/guality/guality.exp
@@ -108,10 +108,17 @@ if {[check_guality "
 
     gcc-dg-runtest [lsort [glob $srcdir/$subdir/*.c]] "" ""
     gcc-dg-runtest $general "" "-Wc++-compat"
+
+    if [check_effective_target_lto] {
+        set lto_option_list [list "-Og -flto"]
+    } else {
+        set lto_option_list ""  
+    }
+
     set-torture-options \
        [list "-O0" "-Og"] \
        [list {}] \
-       [list "-Og -flto"]
+       $lto_option_list
     gcc-dg-runtest $Og "" "-Wc++-compat"
 }

Reply via email to