1 /* PR c/68668 */
2 /* { dg-do compile } */
3 
4 typedef const int T[];
5 typedef const int U[1];
6 
7 int
fn1(T p)8 fn1 (T p)
9 {
10   return p[0];
11 }
12 
13 int
fn2(U p[2])14 fn2 (U p[2])
15 {
16   return p[0][0];
17 }
18 
19 int
fn3(U p[2][3])20 fn3 (U p[2][3])
21 {
22   return p[0][0][0];
23 }
24 
25 int
fn4(U * p)26 fn4 (U *p)
27 {
28   return p[0][0];
29 }
30 
31 int
fn5(U (* p)[1])32 fn5 (U (*p)[1])
33 {
34   return (*p)[0][0];
35 }
36 
37 int
fn6(U (* p)[1][2])38 fn6 (U (*p)[1][2])
39 {
40   return (*p)[0][0][0];
41 }
42 
43 int
fn7(U ** p)44 fn7 (U **p)
45 {
46   return p[0][0][0];
47 }
48 
49 int
fn8(U (** p)[1])50 fn8 (U (**p)[1])
51 {
52   return (*p)[0][0][0];
53 }
54