aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/goacc/nesting-fail-1.f95
blob: 9f981007e516379ff8587c53613ac370d437f787 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
! { dg-do compile } 

! The OpenACC specification allows nested compute constructs, but we don't
! support that yet.  */

program test
  implicit none

  integer :: i

  !$acc parallel
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
  !$acc end parallel

  !$acc parallel
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
  !$acc end parallel

  !$acc parallel
    !$acc serial ! { dg-bogus ".serial. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end parallel

  !$acc parallel
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
    !$acc serial ! { dg-bogus ".serial. construct inside of .parallel. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end parallel


  !$acc kernels
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
  !$acc end kernels

  !$acc kernels
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
  !$acc end kernels

  !$acc kernels
    !$acc serial ! { dg-bogus ".serial. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end kernels

  !$acc kernels
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
    !$acc serial ! { dg-bogus ".serial. construct inside of .kernels. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end kernels


  !$acc serial
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
  !$acc end serial

  !$acc serial
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
  !$acc end serial

  !$acc serial
    !$acc serial ! { dg-bogus ".serial. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end serial

  !$acc serial
    !$acc parallel ! { dg-bogus ".parallel. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end parallel
    !$acc kernels ! { dg-bogus ".kernels. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end kernels
    !$acc serial ! { dg-bogus ".serial. construct inside of .serial. region" "not implemented" { xfail *-*-* } }
    !$acc end serial
  !$acc end serial


  !$acc parallel
    !$acc data ! { dg-error ".data. construct inside of .parallel. region" }
    !$acc end data
  !$acc end parallel

  !$acc kernels
    !$acc data ! { dg-error ".data. construct inside of .kernels. region" }
    !$acc end data
  !$acc end kernels
  
  !$acc serial
    !$acc data ! { dg-error ".data. construct inside of .serial. region" }
    !$acc end data
  !$acc end serial

end program test