| /* { dg-additional-options "-fdump-tree-gimple" } */ |
| int bar (int); |
| int bar2 (int); |
| |
| void foobar() |
| { |
| int d[64], e[64], f[64]; |
| #pragma omp parallel default(none) /* { dg-note "enclosing 'parallel'" } */ |
| #pragma omp task affinity (d, e[bar(5)], f[4:10]) |
| ; |
| /* { dg-error "'f' not specified in enclosing 'parallel'" "" { target *-*-* } .-2 } */ |
| /* { dg-error "'e' not specified in enclosing 'parallel'" "" { target *-*-* } .-3 } */ |
| /* { dg-error "'d' not specified in enclosing 'parallel'" "" { target *-*-* } .-4 } */ |
| } |
| |
| void |
| foo (void) |
| { |
| int a[64]; |
| #pragma omp parallel default(none) /* { dg-note "enclosing 'parallel'" } */ |
| #pragma omp task affinity (iterator (j=bar(0):bar(1):bar(2)) : a[bar(j)]) |
| ; |
| /* { dg-error "'a' not specified in enclosing 'parallel'" "" { target *-*-* } .-2 } */ |
| } |
| |
| void |
| qux (void) |
| { |
| int a[64], b[64], c[64]; |
| #pragma omp parallel default(none) /* { dg-note "enclosing 'parallel'" } */ |
| #pragma omp task affinity (iterator (j=bar(0):bar(1):bar(2)) : a[bar(j+1)], b[bar(j+2)], c[bar(j+3)]) |
| ; |
| /* { dg-error "'a' not specified in enclosing 'parallel'" "" { target *-*-* } .-2 } */ |
| /* { dg-error "'c' not specified in enclosing 'parallel'" "" { target *-*-* } .-3 } */ |
| /* { dg-error "'b' not specified in enclosing 'parallel'" "" { target *-*-* } .-4 } */ |
| } |