1 /* Test for non-lvalue arrays decaying to pointers: in C99 only.
2    Test various ways of producing non-lvalue arrays.  */
3 /* Origin: Joseph Myers <jsm28@cam.ac.uk> */
4 /* { dg-do compile } */
5 /* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
6 
7 struct s { char c[1]; };
8 struct s a, b, c;
9 int d;
10 
11 void
bar(void)12 bar (void)
13 {
14   char *t;
15   (d ? b : c).c[0];
16   (d, b).c[0];
17   (a = b).c[0];
18   t = (d ? b : c).c;
19   t = (d, b).c;
20   t = (a = b).c;
21   (d ? b : c).c + 1;
22   (d, b).c + 1;
23   (a = b).c + 1;
24 }
25