https://gcc.gnu.org/g:62beefc4750fc141b008706121b784c64625f808

commit r16-3343-g62beefc4750fc141b008706121b784c64625f808
Author: Nathaniel Shead <nathanielosh...@gmail.com>
Date:   Fri Aug 22 13:47:43 2025 +1000

    testsuite: Fix g++.dg/abi/mangle83.C for -fshort-enums
    
    Linaro CI informed me that this test fails on ARM thumb-m7-hard-eabi.
    This appears to be because the target defaults to -fshort-enums, and so
    the mangled names are inaccurate.
    
    This patch just disables the implicit type enum test for this case.
    
    gcc/testsuite/ChangeLog:
    
            * g++.dg/abi/mangle83.C: Disable implicit enum test for
            -fshort-enums.
    
    Signed-off-by: Nathaniel Shead <nathanielosh...@gmail.com>

Diff:
---
 gcc/testsuite/g++.dg/abi/mangle83.C | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/testsuite/g++.dg/abi/mangle83.C 
b/gcc/testsuite/g++.dg/abi/mangle83.C
index 4f05d663ab8c..ed68656f8c5f 100644
--- a/gcc/testsuite/g++.dg/abi/mangle83.C
+++ b/gcc/testsuite/g++.dg/abi/mangle83.C
@@ -7,9 +7,9 @@ template<auto V> int Frob () { return int (V); }
 enum { A = (unsigned int)12345, B = 0 };
 template int Frob<A> ();
 template int Frob<B> ();
-// { dg-final { scan-assembler {_Z4FrobITnDaLUej1A12345EEiv:} { target c++20 } 
} }
+// { dg-final { scan-assembler {_Z4FrobITnDaLUej1A12345EEiv:} { target { c++20 
&& { ! short_enums } } } } }
 // { dg-final { scan-assembler {_Z4FrobITnDaL8._anon_012345EEiv:} { target 
c++17_down } } }
-// { dg-final { scan-assembler {_Z4FrobITnDaLUej1A0EEiv:} { target c++20 } } }
+// { dg-final { scan-assembler {_Z4FrobITnDaLUej1A0EEiv:} { target { c++20 && 
{ ! short_enums } } } } }
 // { dg-final { scan-assembler {_Z4FrobITnDaL8._anon_00EEiv:} { target 
c++17_down } } }
 
 enum { C = 5 } typedef X;

Reply via email to