From 6ca1c37cdb07ca6f8e6e608dae53ea89a1c5b3e8 Mon Sep 17 00:00:00 2001 From: Kris Van Hees Date: Tue, 22 Apr 2008 17:20:40 +0000 Subject: [PATCH] re PR testsuite/35981 (FAIL: gcc.dg/utf-cvt.c (test for warnings, line 46/47) with -m64) 2008-04-22 Kris Van Hees PR testsuite/35981 * g++.dg/ext/utf-cvt.C: Handle 64-bit platforms correctly. Add tests for 'long long'. * gcc.dg/utf-cvt.c: Handle 64-bit platforms correctly. Add tests for 'long long'. From-SVN: r134562 --- gcc/testsuite/ChangeLog | 8 ++++++ gcc/testsuite/g++.dg/ext/utf-cvt.C | 39 ++++++++++++++++----------- gcc/testsuite/gcc.dg/utf-cvt.c | 43 ++++++++++++++++++------------ 3 files changed, 58 insertions(+), 32 deletions(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1c1262ee301..cf06d4b0d1a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2008-04-22 Kris Van Hees + + PR testsuite/35981 + * g++.dg/ext/utf-cvt.C: Handle 64-bit platforms correctly. + Add tests for 'long long'. + * gcc.dg/utf-cvt.c: Handle 64-bit platforms correctly. + Add tests for 'long long'. + 2008-04-22 Nick Clifton * gcc.dg/Wconversion-real.c: Add missing end of comment marker. diff --git a/gcc/testsuite/g++.dg/ext/utf-cvt.C b/gcc/testsuite/g++.dg/ext/utf-cvt.C index 0e6b17a5ad1..3ebc3a19af1 100644 --- a/gcc/testsuite/g++.dg/ext/utf-cvt.C +++ b/gcc/testsuite/g++.dg/ext/utf-cvt.C @@ -15,14 +15,17 @@ extern void fui (unsigned int); extern void f_l (long); extern void fsl (signed long); extern void ful (unsigned long); +extern void f_ll (long long); +extern void fsll (signed long long); +extern void full (unsigned long long); void m(char16_t c0, char32_t c1) { - f_c (c0); /* { dg-warning "alter its value" } */ - fsc (c0); /* { dg-warning "alter its value" } */ - fuc (c0); /* { dg-warning "alter its value" } */ - f_s (c0); /* { dg-warning "change the sign" } */ - fss (c0); /* { dg-warning "change the sign" } */ + f_c (c0); /* { dg-warning "alter its value" } */ + fsc (c0); /* { dg-warning "alter its value" } */ + fuc (c0); /* { dg-warning "alter its value" } */ + f_s (c0); /* { dg-warning "change the sign" } */ + fss (c0); /* { dg-warning "change the sign" } */ fus (c0); f_i (c0); fsi (c0); @@ -30,17 +33,23 @@ void m(char16_t c0, char32_t c1) f_l (c0); fsl (c0); ful (c0); + f_ll (c0); + fsll (c0); + full (c0); - f_c (c1); /* { dg-warning "alter its value" } */ - fsc (c1); /* { dg-warning "alter its value" } */ - fuc (c1); /* { dg-warning "alter its value" } */ - f_s (c1); /* { dg-warning "alter its value" } */ - fss (c1); /* { dg-warning "alter its value" } */ - fus (c1); /* { dg-warning "alter its value" } */ - f_i (c1); /* { dg-warning "change the sign" } */ - fsi (c1); /* { dg-warning "change the sign" } */ + f_c (c1); /* { dg-warning "alter its value" } */ + fsc (c1); /* { dg-warning "alter its value" } */ + fuc (c1); /* { dg-warning "alter its value" } */ + f_s (c1); /* { dg-warning "alter its value" } */ + fss (c1); /* { dg-warning "alter its value" } */ + fus (c1); /* { dg-warning "alter its value" } */ + f_i (c1); /* { dg-warning "change the sign" } */ + fsi (c1); /* { dg-warning "change the sign" } */ fui (c1); - f_l (c1); /* { dg-warning "change the sign" } */ - fsl (c1); /* { dg-warning "change the sign" } */ + f_l (c1); /* { dg-warning "change the sign" "" { target { ilp32 } } } */ + fsl (c1); /* { dg-warning "change the sign" "" { target { ilp32 } } } */ ful (c1); + f_ll (c1); + fsll (c1); + full (c1); } diff --git a/gcc/testsuite/gcc.dg/utf-cvt.c b/gcc/testsuite/gcc.dg/utf-cvt.c index e4bc624ac35..109d231bff4 100644 --- a/gcc/testsuite/gcc.dg/utf-cvt.c +++ b/gcc/testsuite/gcc.dg/utf-cvt.c @@ -3,8 +3,8 @@ /* { dg-do compile } */ /* { dg-options "-std=gnu99 -Wall -Wconversion -Wsign-conversion" } */ -typedef unsigned short char16_t; -typedef unsigned int char32_t; +typedef short unsigned int char16_t; +typedef unsigned int char32_t; extern void f_c (char); extern void fsc (signed char); @@ -18,14 +18,17 @@ extern void fui (unsigned int); extern void f_l (long); extern void fsl (signed long); extern void ful (unsigned long); +extern void f_ll (long long); +extern void fsll (signed long long); +extern void full (unsigned long long); void m (char16_t c0, char32_t c1) { - f_c (c0); /* { dg-warning "alter its value" } */ - fsc (c0); /* { dg-warning "alter its value" } */ - fuc (c0); /* { dg-warning "alter its value" } */ - f_s (c0); /* { dg-warning "change the sign" } */ - fss (c0); /* { dg-warning "change the sign" } */ + f_c (c0); /* { dg-warning "alter its value" } */ + fsc (c0); /* { dg-warning "alter its value" } */ + fuc (c0); /* { dg-warning "alter its value" } */ + f_s (c0); /* { dg-warning "change the sign" } */ + fss (c0); /* { dg-warning "change the sign" } */ fus (c0); f_i (c0); fsi (c0); @@ -33,17 +36,23 @@ void m (char16_t c0, char32_t c1) f_l (c0); fsl (c0); ful (c0); + f_ll (c0); + fsll (c0); + full (c0); - f_c (c1); /* { dg-warning "alter its value" } */ - fsc (c1); /* { dg-warning "alter its value" } */ - fuc (c1); /* { dg-warning "alter its value" } */ - f_s (c1); /* { dg-warning "alter its value" } */ - fss (c1); /* { dg-warning "alter its value" } */ - fus (c1); /* { dg-warning "alter its value" } */ - f_i (c1); /* { dg-warning "change the sign" } */ - fsi (c1); /* { dg-warning "change the sign" } */ + f_c (c1); /* { dg-warning "alter its value" } */ + fsc (c1); /* { dg-warning "alter its value" } */ + fuc (c1); /* { dg-warning "alter its value" } */ + f_s (c1); /* { dg-warning "alter its value" } */ + fss (c1); /* { dg-warning "alter its value" } */ + fus (c1); /* { dg-warning "alter its value" } */ + f_i (c1); /* { dg-warning "change the sign" } */ + fsi (c1); /* { dg-warning "change the sign" } */ fui (c1); - f_l (c1); /* { dg-warning "change the sign" } */ - fsl (c1); /* { dg-warning "change the sign" } */ + f_l (c1); /* { dg-warning "change the sign" "" { target { ilp32 } } } */ + fsl (c1); /* { dg-warning "change the sign" "" { target { ilp32 } } } */ ful (c1); + f_ll (c1); + fsll (c1); + full (c1); } -- 2.30.2