| /* Reject ivars that use flexible array members. */ |
| /* Contributed by Nicola Pero <nicola.pero@meta-innovation.com> */ |
| /* { dg-do compile } */ |
| |
| typedef struct |
| { |
| unsigned long int a; |
| double b[]; |
| } test_type; |
| |
| @interface Test |
| { |
| double a[]; /* { dg-error "instance variable .a. has unknown size" } */ |
| struct { int x; double y[]; } b; /* { dg-error "instance variable .b. uses flexible array member" } */ |
| test_type c; /* { dg-error "instance variable .c. uses flexible array member" } */ |
| test_type d[4]; /* { dg-error "instance variable .d. uses flexible array member" } */ |
| union union_type { int x; test_type y; } e; /* { dg-error "instance variable .e. uses flexible array member" } */ |
| } |
| @end |
| |
| @implementation Test |
| @end |