+2008-04-22 Kris Van Hees <kris.van.hees@oracle.com>
+
+ 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 <nickc@redhat.com>
* gcc.dg/Wconversion-real.c: Add missing end of comment marker.
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);
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);
}
/* { 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);
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);
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);
}