1! RUN: %python %S/test_folding.py %s %flang_fc1 2 3! Test fold parity intrinsic. 4 5module paritytest 6 logical, parameter :: test_1t = parity((/ .true. /)) 7 logical, parameter :: test_1f = .not. parity((/ .false. /)) 8 9 logical, parameter :: test_e1 = .not. parity((/ .true., .true. /)) 10 logical, parameter :: test_o1 = parity((/ .true., .true., .true. /)) 11 logical, parameter :: test_o12 = parity((/ .true., .true., .true., .false. /)) 12 13 logical, parameter, dimension(2, 3) :: a32 = reshape((/& 14 .true., .true., .false., & 15 .true., .true., .true. & 16 /), shape(a32), order=(/2, 1/)) 17 18 logical, parameter, dimension(2, 3) :: a32t = reshape((/& 19 .true., .true., .true., & 20 .true., .true., .true. & 21 /), shape(a32t)) 22 23 logical, parameter, dimension(2, 3) :: a32f = reshape((/& 24 .false., .false., .false., & 25 .false., .false., .false. & 26 /), shape(a32f)) 27 28 logical, parameter :: test_a32 = parity(a32) 29 logical, parameter :: test_a32t = .not. parity(a32t) 30 logical, parameter :: test_a32f = .not. parity(a32f) 31 32 logical, parameter :: test_a321 = & 33 all(parity(a32, 1) .EQV. (/ .false., .false., .true. /)) 34 35 logical, parameter :: test_a322 = & 36 all(parity(a32, 2) .EQV. (/ .false., .true. /)) 37 38end module paritytest 39