[gcc(refs/users/giulianob/heads/autopar_rebase2)] TESTSUITE: Fix Wconversion-null*.C tests for aarch64 -mabi=ilp32

Giuliano Belinassi giulianob@gcc.gnu.org
Mon Aug 17 22:37:01 GMT 2020


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

commit e94dcb80e21243b2e84bbcc3a60a95e2f25e29f6
Author: Jozef Lawrynowicz <jozef.l@mittosystems.com>
Date:   Wed May 20 22:15:18 2020 +0100

    TESTSUITE: Fix Wconversion-null*.C tests for aarch64 -mabi=ilp32
    
    This fixes regressions for aarch64 with -mabi=ilp32 of the
    Wconversion-null*.C tests, introduced by 92ea8e1bccc.
    
    The "g (int)" declaration is required for that target where
    sizeof(int) == sizeof(long) == sizeof(void *).
    
    To handle the msp430/-mlarge case, an explicit declaration of
    "g (__int20)" is required.
    
    gcc/testsuite/ChangeLog:
    
            * g++.dg/warn/Wconversion-null-2.C: Add explicit declarations for l()
            and g() with int, long, long long and __int20 arguments.
            * g++.dg/warn/Wconversion-null.C: Likewise.

Diff:
---
 gcc/testsuite/g++.dg/warn/Wconversion-null-2.C | 20 ++++++++++++++++++--
 gcc/testsuite/g++.dg/warn/Wconversion-null.C   | 20 ++++++++++++++++++--
 2 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/gcc/testsuite/g++.dg/warn/Wconversion-null-2.C b/gcc/testsuite/g++.dg/warn/Wconversion-null-2.C
index 0f5bf58bd5d..3ba756e596b 100644
--- a/gcc/testsuite/g++.dg/warn/Wconversion-null-2.C
+++ b/gcc/testsuite/g++.dg/warn/Wconversion-null-2.C
@@ -3,7 +3,12 @@
 
 #include <cstddef>
 
-void g(__INTPTR_TYPE__) {}
+void g(int) {}
+void g(long) {}
+void g(long long) {}
+#ifdef __MSP430X_LARGE__
+void g(__int20) {}
+#endif
 extern void g(void*);
 
 template <int I>
@@ -15,7 +20,18 @@ template <class T>
 void l(T);
 
 template <>
-void l(__INTPTR_TYPE__) {}
+void l(int) {}
+
+template <>
+void l(long) {}
+
+template <>
+void l(long long) {}
+
+#ifdef __MSP430X_LARGE__
+template <>
+void l(__int20) {}
+#endif
 
 void warn_for_NULL()
 {
diff --git a/gcc/testsuite/g++.dg/warn/Wconversion-null.C b/gcc/testsuite/g++.dg/warn/Wconversion-null.C
index 4cac2671116..4c68d233450 100644
--- a/gcc/testsuite/g++.dg/warn/Wconversion-null.C
+++ b/gcc/testsuite/g++.dg/warn/Wconversion-null.C
@@ -3,7 +3,12 @@
 
 #include <cstddef>
 
-void g(__INTPTR_TYPE__) {}
+void g(int) {}
+void g(long) {}
+void g(long long) {}
+#ifdef __MSP430X_LARGE__
+void g(__int20) {}
+#endif
 extern void g(void*);
 
 template <int I>
@@ -15,7 +20,18 @@ template <class T>
 void l(T);
 
 template <>
-void l(__INTPTR_TYPE__) {}
+void l(int) {}
+
+template <>
+void l(long) {}
+
+template <>
+void l(long long) {}
+
+#ifdef __MSP430X_LARGE__
+template <>
+void l(__int20) {}
+#endif
 
 int main()
 {


More information about the Gcc-cvs mailing list