| /* { dg-options "-fshow-column -Wall -Wfloat-equal -pedantic" } */ |
| |
| int i, j; |
| float a, b; |
| |
| int *p; |
| struct { |
| int a; |
| char b; |
| } *q; |
| |
| extern void bar(); |
| |
| void foo (void) |
| { |
| if (a == b) /* { dg-warning "9:comparing floating-point with" } */ |
| bar (); |
| |
| if (p < q) /* { dg-warning "9:comparison of distinct pointer types" } */ |
| bar (); |
| |
| if (&p == 0) /* { dg-warning "10:comparison will always evaluate as 'false'" } */ |
| bar(); |
| |
| if (p == 4) /* { dg-warning "9:comparison between pointer and integer" } */ |
| bar(); |
| |
| if (p < 0) /* { dg-warning "9:ordered comparison of pointer with" } */ |
| bar(); |
| |
| -q; /* { dg-error "3:wrong type argument to unary" } */ |
| |
| ~q; /* { dg-error "3:wrong type argument to bit" } */ |
| |
| ++*q; /* { dg-error "3:wrong type argument to increment" } */ |
| |
| i = j / 0; /* { dg-warning "9:division by zero" } */ |
| |
| i /= 0; /* { dg-warning "5:division by zero" } */ |
| } |