1! { dg-additional-options "-fcray-pointer" } 2! See also cray.f95. 3 4program test 5 call oacc1 6contains 7 subroutine oacc1 8 implicit none 9 integer :: i 10 real :: pointee 11 pointer (ptr, pointee) 12 !$acc declare device_resident (pointee) 13 !$acc declare device_resident (ptr) 14 !$acc data copy (pointee) ! { dg-error "Cray pointee" } 15 !$acc end data 16 !$acc data deviceptr (pointee) ! { dg-error "Cray pointee" } 17 !$acc end data 18 !$acc parallel private (pointee) ! { dg-error "Cray pointee" } 19 !$acc end parallel 20 !$acc host_data use_device (pointee) ! { dg-error "Cray pointee" } 21 !$acc end host_data 22 !$acc parallel loop reduction(+:pointee) ! { dg-error "Cray pointee" } 23 do i = 1,5 24 enddo 25 !$acc end parallel loop 26 !$acc parallel loop 27 do i = 1,5 28 !$acc cache (pointee) ! { dg-error "Cray pointee" } 29 enddo 30 !$acc end parallel loop 31 !$acc update device (pointee) ! { dg-error "Cray pointee" } 32 !$acc update host (pointee) ! { dg-error "Cray pointee" } 33 !$acc update self (pointee) ! { dg-error "Cray pointee" } 34 !$acc data copy (ptr) 35 !$acc end data 36 !$acc data deviceptr (ptr) ! { dg-error "Cray pointer" } 37 !$acc end data 38 !$acc parallel private (ptr) 39 !$acc end parallel 40 !$acc host_data use_device (ptr) ! { dg-error "Cray pointer" } 41 !$acc end host_data 42 !$acc parallel loop reduction(+:ptr) ! { dg-error "Cray pointer" } 43 do i = 1,5 44 enddo 45 !$acc end parallel loop 46 !$acc parallel loop 47 do i = 1,5 48 !TODO: This must fail, as in openacc-1_0-branch. 49 !$acc cache (ptr) ! { dg-error "" "TODO" { xfail *-*-* } } 50 enddo 51 !$acc end parallel loop 52 !$acc update device (ptr) 53 !$acc update host (ptr) 54 !$acc update self (ptr) 55 end subroutine oacc1 56end program test 57