blob: bce902bbcc6f3847969d653410b94f5af7ff7543 [file] [log] [blame]
! { dg-do compile }
! { dg-additional-options "-fmax-errors=100" }
program test
implicit none
integer :: i, a(10), b(5:7)
integer, parameter :: acc_async_noval = -1
integer, parameter :: acc_async_sync = -2
logical :: l
! async
!$acc kernels async(i)
!$acc end kernels
!$acc parallel async(i)
!$acc end parallel
!$acc serial async(i)
!$acc end serial
!$acc kernels async(0, 1) { dg-error "Failed to match clause" }
!$acc parallel async(0, 1) { dg-error "Failed to match clause" }
!$acc serial async(0, 1) { dg-error "Failed to match clause" }
!$acc kernels async
!$acc end kernels
!$acc parallel async
!$acc end parallel
!$acc serial async
!$acc end serial
!$acc kernels async(acc_async_noval)
!$acc end kernels
!$acc parallel async(acc_async_noval)
!$acc end parallel
!$acc serial async(acc_async_noval)
!$acc end serial
!$acc kernels async(acc_async_sync)
!$acc end kernels
!$acc parallel async(acc_async_sync)
!$acc end parallel
!$acc serial async(acc_async_sync)
!$acc end serial
!$acc kernels async() { dg-error "Invalid character" }
!$acc parallel async() { dg-error "Invalid character" }
!$acc serial async() { dg-error "Invalid character" }
!$acc kernels async("a") { dg-error "Failed to match clause" }
!$acc parallel async("a") { dg-error "Failed to match clause" }
!$acc serial async("a") { dg-error "Failed to match clause" }
!$acc kernels async(.true.) { dg-error "Failed to match clause" }
!$acc parallel async(.true.) { dg-error "Failed to match clause" }
!$acc serial async(.true.) { dg-error "Failed to match clause" }
! default(none)
!$acc kernels default(none)
!$acc end kernels
!$acc parallel default(none)
!$acc end parallel
!$acc serial default(none)
!$acc end serial
!$acc kernels default (none)
!$acc end kernels
!$acc parallel default (none)
!$acc end parallel
!$acc serial default (none)
!$acc end serial
!$acc kernels default ( none )
!$acc end kernels
!$acc parallel default ( none )
!$acc end parallel
!$acc serial default ( none )
!$acc end serial
!$acc kernels default { dg-error "Expected '\\(' after 'default'" }
!$acc parallel default { dg-error "Expected '\\(' after 'default'" }
!$acc serial default { dg-error "Expected '\\(' after 'default'" }
!$acc kernels default() { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc parallel default() { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc serial default() { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc kernels default(i) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc parallel default(i) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc serial default(i) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc kernels default(1) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc parallel default(1) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
!$acc serial default(1) { dg-error "Expected NONE or PRESENT in DEFAULT clause" }
! Wait
!$acc kernels wait (l) ! { dg-error "INTEGER" }
!$acc end kernels
!$acc kernels wait (.true.) ! { dg-error "INTEGER" }
!$acc end kernels
!$acc kernels wait (i, 1)
!$acc end kernels
!$acc kernels wait (a) ! { dg-error "INTEGER" }
!$acc end kernels
!$acc kernels wait (b(5:6)) ! { dg-error "INTEGER" }
!$acc end kernels
!$acc parallel wait (l) ! { dg-error "INTEGER" }
!$acc end parallel
!$acc parallel wait (.true.) ! { dg-error "INTEGER" }
!$acc end parallel
!$acc parallel wait (i, 1)
!$acc end parallel
!$acc parallel wait (a) ! { dg-error "INTEGER" }
!$acc end parallel
!$acc parallel wait (b(5:6)) ! { dg-error "INTEGER" }
!$acc end parallel
!$acc serial wait (l) ! { dg-error "INTEGER" }
!$acc end serial
!$acc serial wait (.true.) ! { dg-error "INTEGER" }
!$acc end serial
!$acc serial wait (i, 1)
!$acc end serial
!$acc serial wait (a) ! { dg-error "INTEGER" }
!$acc end serial
!$acc serial wait (b(5:6)) ! { dg-error "INTEGER" }
!$acc end serial
end