! { dg-do compile } ! { dg-additional-options "-fmax-errors=100" } program test implicit none integer :: i, j, k, l, a(10) common /b/ k real, pointer :: p1 => NULL() complex :: c, d(10) !$acc parallel private(i) !$acc end parallel !$acc parallel private(a) !$acc end parallel !$acc parallel private(c, d) !$acc end parallel !$acc parallel private(i, j, k, l, a) !$acc end parallel !$acc parallel private (i) private (j) !$acc end parallel !$acc parallel private ! { dg-error "Unclassifiable OpenACC directive" } !$acc parallel private() ! { dg-error "Syntax error" } !$acc parallel private(a(1:3)) ! { dg-error "Syntax error" } !$acc parallel private(10) ! { dg-error "Syntax error" } !$acc parallel private(/b/, /b/) ! { dg-error "present on multiple clauses" } !$acc end parallel !$acc parallel private(i, j, i) ! { dg-error "present on multiple clauses" } !$acc end parallel !$acc parallel private(p1) !$acc end parallel !$acc parallel firstprivate(i) !$acc end parallel !$acc parallel firstprivate(c, d) !$acc end parallel !$acc parallel firstprivate(a) !$acc end parallel !$acc parallel firstprivate(i, j, k, l, a) !$acc end parallel !$acc parallel firstprivate (i) firstprivate (j) !$acc end parallel !$acc parallel firstprivate ! { dg-error "Unclassifiable OpenACC directive" } !$acc parallel firstprivate() ! { dg-error "Syntax error" } !$acc parallel firstprivate(a(1:3)) ! { dg-error "Syntax error" } !$acc parallel firstprivate(10) ! { dg-error "Syntax error" } !$acc parallel firstprivate (/b/, /b/) ! { dg-error "present on multiple clauses" } !$acc end parallel !$acc parallel firstprivate (i, j, i) ! { dg-error "present on multiple clauses" } !$acc end parallel !$acc parallel firstprivate(p1) !$acc end parallel !$acc parallel private (i) firstprivate (i) ! { dg-error "present on multiple clauses" } !$acc end parallel !$acc host_data use_device(i) ! { dg-error "neither a POINTER nor an array" } !$acc end host_data !$acc host_data use_device(c, d) ! { dg-error "neither a POINTER nor an array" } !$acc end host_data !$acc host_data use_device(a) !$acc end host_data !$acc host_data use_device(i, j, k, l, a) ! { dg-error "neither a POINTER nor an array" } !$acc end host_data !$acc host_data use_device (i) use_device (j) ! { dg-error "neither a POINTER nor an array" } !$acc end host_data !$acc host_data use_device ! { dg-error "Unclassifiable OpenACC directive" } !$acc host_data use_device() ! { dg-error "Syntax error" } !$acc host_data use_device(a(1:3)) ! { dg-error "Syntax error" } !$acc host_data use_device(10) ! { dg-error "Syntax error" } !$acc host_data use_device(/b/, /b/) !$acc end host_data ! { dg-error "neither a POINTER nor an array" "" { target *-*-* } 102 } ! { dg-error "present on multiple clauses" "" { target *-*-* } 102 } !$acc host_data use_device(i, j, i) !$acc end host_data ! { dg-error "neither a POINTER nor an array" "" { target *-*-* } 107 } ! { dg-error "present on multiple clauses" "" { target *-*-* } 107 } !$acc host_data use_device(p1) !$acc end host_data end program test