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

commit r15-5527-gbeab0a3ecb2fa839295869fcff1c10237b99d085
Author: Andrew Pinski <quic_apin...@quicinc.com>
Date:   Tue Nov 19 19:49:38 2024 -0800

    aarch64: Fix aarch64 after moving to C23
    
    This fixes a few aarch64 specific testcases after the move to default to 
GNU C23.
    For the SME testcases, the GNU C23 cases as `()` changing to mean `(void)` 
instead
    of a non-prototype declaration; the non-prototype declaration merging was 
confusing
    some of the time so the updated way is the expected way even for that.
    For pic-*.c `-Wno-old-style-definition` was added not to warn about old 
style definitions.
    For pr113573.c, I added `-std=gnu17` since I was not sure if `(...)` with 
C23 would invoke
    the same issue.
    
    tested for aarch64-linux-gnu.
    
            PR testsuite/117680
    gcc/testsuite/ChangeLog:
    
            * gcc.target/aarch64/pic-constantpool1.c: Add 
-Wno-old-style-definition.
            * gcc.target/aarch64/pic-symrefplus.c: Likewise.
            * gcc.target/aarch64/pr113573.c: Add `-std=gnu17`
            * gcc.target/aarch64/sme/streaming_mode_1.c: Correct testcase.
            * gcc.target/aarch64/sme/za_state_1.c: Likewise.
            * gcc.target/aarch64/sme/za_state_2.c: Likewise.
    
    Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com>

Diff:
---
 gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c    | 2 +-
 gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c       | 2 +-
 gcc/testsuite/gcc.target/aarch64/pr113573.c             | 2 +-
 gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c | 4 ++--
 gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c       | 4 ++--
 gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c       | 2 +-
 6 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c 
b/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c
index 755c0b67ea45..1a5da9aacfa8 100644
--- a/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c
+++ b/gcc/testsuite/gcc.target/aarch64/pic-constantpool1.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -mcmodel=small -fPIC" }  */
+/* { dg-options "-Wno-old-style-definition -O2 -mcmodel=small -fPIC" }  */
 /* { dg-do compile } */
 /* { dg-require-effective-target fpic } */
 
diff --git a/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c 
b/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c
index 0c5e7fe7fb47..ca019ce3b33e 100644
--- a/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c
+++ b/gcc/testsuite/gcc.target/aarch64/pic-symrefplus.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -mcmodel=small -fPIC -fno-builtin" }  */
+/* { dg-options "-Wno-old-style-definition -O2 -mcmodel=small -fPIC 
-fno-builtin" }  */
 /* { dg-do compile } */
 /* { dg-require-effective-target fpic } */
 
diff --git a/gcc/testsuite/gcc.target/aarch64/pr113573.c 
b/gcc/testsuite/gcc.target/aarch64/pr113573.c
index fc8607f7218c..30175c4cb5c8 100644
--- a/gcc/testsuite/gcc.target/aarch64/pr113573.c
+++ b/gcc/testsuite/gcc.target/aarch64/pr113573.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2" } */
+/* { dg-options "-O2 -std=gnu17" } */
 
 #pragma GCC aarch64 "arm_neon.h"
 typedef __Uint8x8_t uint8x8_t;
diff --git a/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c 
b/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c
index 8874b05b882c..cb1b05948d83 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/streaming_mode_1.c
@@ -7,7 +7,7 @@ void sc_b ();
 void sc_b () [[arm::streaming_compatible]]; // { dg-error "conflicting types" }
 
 void sc_c () [[arm::streaming_compatible]];
-void sc_c () {} // Inherits attribute from declaration (confusingly).
+void sc_c () {} // { dg-error "conflicting types" }
 
 void sc_d ();
 void sc_d () [[arm::streaming_compatible]] {} // { dg-error "conflicting 
types" }
@@ -33,7 +33,7 @@ void s_b ();
 void s_b () [[arm::streaming]]; // { dg-error "conflicting types" }
 
 void s_c () [[arm::streaming]];
-void s_c () {} // Inherits attribute from declaration (confusingly).
+void s_c () {} // { dg-error "conflicting types" }
 
 void s_d ();
 void s_d () [[arm::streaming]] {} // { dg-error "conflicting types" }
diff --git a/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c 
b/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c
index 856880e21093..7d7989b18b34 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/za_state_1.c
@@ -7,7 +7,7 @@ void shared_b ();
 void shared_b () [[arm::inout("za")]]; // { dg-error "conflicting types" }
 
 void shared_c () [[arm::inout("za")]];
-void shared_c () {} // Inherits attribute from declaration (confusingly).
+void shared_c () {} // { dg-error "conflicting types" }
 
 void shared_d ();
 void shared_d () [[arm::inout("za")]] {} // { dg-error "conflicting types" }
@@ -33,7 +33,7 @@ void preserved_b ();
 void preserved_b () [[arm::preserves("za")]]; // { dg-error "conflicting 
types" }
 
 void preserved_c () [[arm::preserves("za")]];
-void preserved_c () {} // Inherits attribute from declaration (confusingly).
+void preserved_c () {} // { dg-error "conflicting types" }
 
 void preserved_d ();
 void preserved_d () [[arm::preserves("za")]] {} // { dg-error "conflicting 
types" }
diff --git a/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c 
b/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c
index 572ff309f8df..6f5803078df5 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/za_state_2.c
@@ -30,7 +30,7 @@ void shared_b () [[arm::inout("za")]];
 void shared_c () [[arm::in("za")]] {} // { dg-error "conflicting types" }
 
 void shared_d () [[arm::in("za")]];
-[[arm::new("za")]] void shared_d () {} // { dg-error "cannot create a new 'za' 
scope since 'za' is shared with callers" }
+[[arm::new("za")]] void shared_d () {} // { dg-error "conflicting types" }
 
 [[arm::new("za")]] void shared_e () {}
 void shared_e () [[arm::out("za")]]; // { dg-error "conflicting types" }

Reply via email to