/* PR c/60087 */ | |
/* { dg-do compile } */ | |
/* { dg-options "-Wsign-compare" } */ | |
void | |
foo (unsigned int ui, int i) | |
{ | |
const unsigned char uc = 0; | |
_Bool b; | |
b = 0 != ~uc; /* { dg-warning "9:promoted ~unsigned is always non-zero" } */ | |
b = 2 != ~uc; /* { dg-warning "9:comparison of promoted ~unsigned with constant" } */ | |
b = uc == ~uc; /* { dg-warning "10:comparison of promoted ~unsigned with unsigned" } */ | |
b = i == ui; /* { dg-warning "9:comparison between signed and unsigned integer expressions" } */ | |
} |