| ! { dg-do run } |
| ! { dg-options "-funsigned" } |
| program memain |
| implicit none |
| call test1 |
| call test2 |
| contains |
| subroutine test1 |
| unsigned, dimension(2,2) :: v |
| integer(8), dimension(2,2) :: i |
| v = reshape([4278255360u, 4042322160u, 3435973836u, 2863311530u],[2,2]) |
| i = int(v,8) |
| if (iall(v) /= 2147516416u) error stop 1 |
| if (iany(v) /= 4294901758u) error stop 2 |
| if (iparity(v) /= 1771465110u) error stop 3 |
| if (any(iall(v,dim=1) /= [4026593280u, 2290649224u])) error stop 4 |
| if (any(iall(v,dim=2) /= [3422604288u, 2694881440u])) error stop 5 |
| if (any(iany(v,dim=1) /= [4293984240u, 4008636142u])) error stop 6 |
| if (any(iany(v,dim=2) /= [4291624908u, 4210752250u])) error stop 7 |
| if (any(iparity(v,dim=1) /= [267390960u, 1717986918u])) error stop 8 |
| if (any(iparity(v,dim=2) /= [869020620u, 1515870810u])) error stop 9 |
| end subroutine test1 |
| subroutine test2 |
| unsigned, dimension(2,2), parameter :: v & |
| = reshape([4278255360u, 4042322160u, 3435973836u, 2863311530u],[2,2]) |
| unsigned, parameter :: v_all = iall(v), v_any = iany(v), v_parity = iparity(v) |
| unsigned, parameter, dimension(2) :: v_all_1 = iall(v,dim=1), v_all_2 = iall(v,dim=2) |
| unsigned, parameter, dimension(2) :: v_any_1 = iany(v,dim=1), v_any_2 = iany(v,dim=2) |
| unsigned, parameter, dimension(2) :: v_parity_1 = iparity(v,dim=1), v_parity_2 = iparity(v,dim=2) |
| if (v_all /= 2147516416u) error stop 10 |
| if (v_any /= 4294901758u) error stop 11 |
| if (v_parity /= 1771465110u) error stop 12 |
| if (any(v_all_1 /= [4026593280u, 2290649224u])) error stop 13 |
| if (any(v_all_2 /= [3422604288u, 2694881440u])) error stop 14 |
| if (any(v_any_1 /= [4293984240u, 4008636142u])) error stop 15 |
| if (any(v_any_2 /= [4291624908u, 4210752250u])) error stop 16 |
| if (any(v_parity_1 /= [267390960u, 1717986918u])) error stop 17 |
| if (any(v_parity_2 /= [869020620u, 1515870810u])) error stop 18 |
| end subroutine test2 |
| end program memain |