1 ! RUN: %python %S/test_folding.py %s %flang_fc1
3 ! Test fold parity intrinsic.
6 logical, parameter :: test_1t
= parity((/ .true
. /))
7 logical, parameter :: test_1f
= .not
. parity((/ .false
. /))
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
. /))
13 logical, parameter, dimension(2, 3) :: a32
= reshape((/&
14 .true
., .true
., .false
., &
15 .true
., .true
., .true
. &
16 /), shape(a32
), order
=(/2, 1/))
18 logical, parameter, dimension(2, 3) :: a32t
= reshape((/&
19 .true
., .true
., .true
., &
20 .true
., .true
., .true
. &
23 logical, parameter, dimension(2, 3) :: a32f
= reshape((/&
24 .false
., .false
., .false
., &
25 .false
., .false
., .false
. &
28 logical, parameter :: test_a32
= parity(a32
)
29 logical, parameter :: test_a32t
= .not
. parity(a32t
)
30 logical, parameter :: test_a32f
= .not
. parity(a32f
)
32 logical, parameter :: test_a321
= &
33 all(parity(a32
, 1) .EQV
. (/ .false
., .false
., .true
. /))
35 logical, parameter :: test_a322
= &
36 all(parity(a32
, 2) .EQV
. (/ .false
., .true
. /))