1! RUN: %python %S/test_folding.py %s %flang_fc1 2! Check array sizes with varying extents, including extents where the upper 3! bound is less than the lower bound 4module m 5 contains 6 subroutine s1(a,b) 7 real nada1(-2:-1) ! size = 2 8 real nada2(-1:-1) ! size = 1 9 real nada3( 0:-1) ! size = 0 10 real nada4( 1:-1) ! size = 0 11 real nada5( 2:-1) ! size = 0 12 real nada6( 3:-1) ! size = 0 13 real nada7( 5, 3:-1) ! size = 0 14 real nada8( -1) ! size = 0 15 16 integer, parameter :: size1 = size(nada1) 17 integer, parameter :: size2 = size(nada2) 18 integer, parameter :: size3 = size(nada3) 19 integer, parameter :: size4 = size(nada4) 20 integer, parameter :: size5 = size(nada5) 21 integer, parameter :: size6 = size(nada6) 22 integer, parameter :: size7 = size(nada7) 23 integer, parameter :: size8 = size(nada8) 24 25 logical, parameter :: test_size_1 = size1 == 2 26 logical, parameter :: test_size_2 = size2 == 1 27 logical, parameter :: test_size_3 = size3 == 0 28 logical, parameter :: test_size_4 = size4 == 0 29 logical, parameter :: test_size_5 = size5 == 0 30 logical, parameter :: test_size_6 = size6 == 0 31 logical, parameter :: test_size_7 = size7 == 0 32 logical, parameter :: test_size_8 = size8 == 0 33 end subroutine 34end module 35