2 /* { dg-do compile } */
3 /* { dg-options "-O2 -Wconversion" } */
19 unsigned char f
= (int) uc
;
20 signed char g
= (int) sc
;
21 unsigned char h
= (unsigned int) (short int) uc
;
22 signed char i
= (int) (unsigned short int) sc
; /* { dg-warning "conversion from .int. to .signed char. may change value" "" { target { int32plus } } } */
23 unsigned char j
= (unsigned int) (short int) us
; /* { dg-warning "may change value" } */
24 signed char k
= (int) (unsigned short int) ss
; /* { dg-warning "may change value" } */
29 signed char a
= (unsigned char) sc
; /* { dg-warning "may change the sign" } */
30 unsigned char b
= (signed char) uc
; /* { dg-warning "may change the sign" } */
31 signed char c
= (int) (unsigned char) sc
; /* { dg-warning "may change the sign" } */
32 unsigned char d
= (int) (signed char) uc
; /* { dg-warning "may change the sign" } */
33 int e
= (unsigned int) si
; /* { dg-warning "may change the sign" } */
34 unsigned int f
= (int) ui
; /* { dg-warning "may change the sign" } */