| ! { dg-do compile } |
| |
| module declare_target_1 |
| !$omp declare target to (var_1, var_4) link (var_2, var_3) & |
| !$omp & link (var_5) to (var_6) |
| integer :: var_1, var_2, var_3, var_4, var_5, var_6 |
| interface |
| subroutine foo |
| !$omp declare target |
| end subroutine |
| end interface |
| end |
| subroutine bar |
| !$omp declare target |
| integer, save :: var_9 |
| !$omp declare target link (var_8) to (baz, var_7) link (var_9) to (var_10) |
| integer, save :: var_7, var_8, var_10 |
| integer :: var_11, var_12, var_13, var_14 |
| common /c1/ var_11, var_12 |
| common /c2/ var_13 |
| common /c3/ var_14 |
| !$omp declare target (baz, var_7, var_10, /c1/) |
| !$omp declare target to (/c2/) |
| !$omp declare target link (/c3/) |
| !$omp declare target (bar) |
| call baz |
| end subroutine |