1! { dg-do compile }
2! { dg-options "-fdump-tree-original" }
3!
4! PR fortran/52093
5!
6! Contributed by Mohammad Rahmani
7!
8
9Program Main
10 Implicit None
11 Integer:: X(2,2)
12 Integer:: X2(7:11,8:9)
13
14 if (size((X)) /= 4) call abort ()
15 if (any (Shape((X))  /= [2,2])) call abort ()
16 if (any (lbound((X)) /= [1,1])) call abort ()
17 if (any (ubound((X)) /= [2,2])) call abort ()
18
19 if (size(X2) /= 10) call abort ()
20 if (any (Shape(X2)  /= [5,2])) call abort ()
21 if (any (lbound(X2) /= [7,8]))  call abort ()
22 if (any (ubound(X2) /= [11,9])) call abort ()
23
24 if (size((X2)) /= 10) call abort ()
25 if (any (Shape((X2))  /= [5,2])) call abort ()
26 if (any (lbound((X2)) /= [1,1])) call abort ()
27 if (any (ubound((X2)) /= [5,2])) call abort ()
28End Program Main
29
30! { dg-final { scan-tree-dump-times "abort" 0 "original" } }
31! { dg-final { cleanup-tree-dump "original" } }
32
33