/* Test comparisons of pointers to complete and incomplete types are diagnosed in C99 mode: -pedantic. */ /* { dg-do compile } */ /* { dg-options "-std=c99 -pedantic" } */ int f (int (*p)[], int (*q)[3]) { return p < q; /* { dg-warning "complete and incomplete" } */ } int f2 (int (*p)[], int (*q)[3]) { return p <= q; /* { dg-warning "complete and incomplete" } */ } int f3 (int (*p)[], int (*q)[3]) { return p > q; /* { dg-warning "complete and incomplete" } */ } int f4 (int (*p)[], int (*q)[3]) { return p >= q; /* { dg-warning "complete and incomplete" } */ } int g (int (*p)[], int (*q)[3]) { return q < p; /* { dg-warning "complete and incomplete" } */ } int g2 (int (*p)[], int (*q)[3]) { return q <= p; /* { dg-warning "complete and incomplete" } */ } int g3 (int (*p)[], int (*q)[3]) { return q > p; /* { dg-warning "complete and incomplete" } */ } int g4 (int (*p)[], int (*q)[3]) { return q >= p; /* { dg-warning "complete and incomplete" } */ }