Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/c-c++-common/gomp/Wparentheses-4.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* PR c/70436 */ /* { dg-additional-options "-Wparentheses -fno-openmp" } */ int a, b, c; void bar (void); void baz (void); void f1 (void); #pragma omp declare target to (bar, baz, f1, a, b, c) void f1 (void) { int i, j; if (a) /* { dg-warning "ambiguous" } */ #pragma omp distribute for (i = 0; i < 10; i++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ for (i = 0; i < 10; i++) #pragma omp distribute simd for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) #pragma omp distribute parallel for for (i = 0; i < 10; i++) if (b) /* { dg-warning "ambiguous" } */ #pragma omp parallel for for (j = 0; j < 10; j++) if (c) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp distribute parallel for simd collapse(2) for (i = 0; i < 10; i++) for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) #pragma omp distribute for (i = 0; i < 10; i++) { if (b) bar (); else baz (); } if (a) { #pragma omp distribute simd for (i = 0; i < 10; ++i) if (b) bar (); } else baz (); if (a) #pragma omp distribute parallel for collapse(2) for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) if (b) bar (); else baz (); } if (a) for (i = 0; i < 10; i++) #pragma omp distribute parallel for simd for (j = 0; j < 10; j++) { if (b) bar (); } else baz (); } void f2 (void) { int i, j; if (a) /* { dg-warning "ambiguous" } */ #pragma omp target teams distribute for (i = 0; i < 10; i++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ for (i = 0; i < 10; i++) #pragma omp target teams distribute simd for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) #pragma omp target teams distribute parallel for for (i = 0; i < 10; i++) if (b) /* { dg-warning "ambiguous" } */ #pragma omp parallel for for (j = 0; j < 10; j++) if (c) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target teams distribute parallel for simd collapse(2) for (i = 0; i < 10; i++) for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target teams if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target #pragma omp parallel if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target parallel if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target simd for (i = 0; i < 10; i++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target simd collapse(2) for (i = 0; i < 10; i++) for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) #pragma omp target teams distribute for (i = 0; i < 10; i++) { if (b) bar (); else baz (); } if (a) { #pragma omp target teams distribute simd for (i = 0; i < 10; ++i) if (b) bar (); } else baz (); if (a) #pragma omp target teams distribute parallel for collapse(2) for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) if (b) bar (); else baz (); } if (a) for (i = 0; i < 10; i++) #pragma omp target teams distribute parallel for simd for (j = 0; j < 10; j++) { if (b) bar (); } else baz (); if (a) #pragma omp target teams { if (b) bar (); } else baz (); if (a) #pragma omp target #pragma omp parallel { if (b) bar (); else baz (); } if (a) #pragma omp target { if (b) bar (); } else baz (); if (a) #pragma omp target parallel { if (b) bar (); } else baz (); if (a) #pragma omp target simd for (i = 0; i < 10; i++) { if (b) bar (); else baz (); } if (a) #pragma omp target simd for (i = 0; i < 10; i++) { if (b) bar (); } else baz (); if (a) #pragma omp target simd collapse(2) for (i = 0; i < 10; i++) { { for (j = 0; j < 10; j++) if (b) bar (); else baz (); } } if (a) #pragma omp target simd collapse(2) for (i = 0; i < 10; i++) { { for (j = 0; j < 10; j++) if (b) bar (); } } else baz (); } void f3 (void) { int i, j; if (a) /* { dg-warning "ambiguous" } */ #pragma omp target #pragma omp teams distribute for (i = 0; i < 10; i++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ for (i = 0; i < 10; i++) #pragma omp target #pragma omp teams distribute simd for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) #pragma omp target #pragma omp teams distribute parallel for for (i = 0; i < 10; i++) if (b) /* { dg-warning "ambiguous" } */ #pragma omp parallel for for (j = 0; j < 10; j++) if (c) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target #pragma omp teams distribute parallel for simd collapse(2) for (i = 0; i < 10; i++) for (j = 0; j < 10; j++) if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target #pragma omp teams if (b) bar (); else baz (); if (a) /* { dg-warning "ambiguous" } */ #pragma omp target #pragma omp teams #pragma omp parallel if (b) bar (); else baz (); if (a) #pragma omp target #pragma omp teams distribute for (i = 0; i < 10; i++) { if (b) bar (); else baz (); } if (a) { #pragma omp target #pragma omp teams distribute simd for (i = 0; i < 10; ++i) if (b) bar (); } else baz (); if (a) #pragma omp target #pragma omp teams distribute parallel for collapse(2) for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) if (b) bar (); else baz (); } if (a) for (i = 0; i < 10; i++) #pragma omp target #pragma omp teams distribute parallel for simd for (j = 0; j < 10; j++) { if (b) bar (); } else baz (); if (a) #pragma omp target #pragma omp teams { if (b) bar (); } else baz (); if (a) #pragma omp target #pragma omp teams #pragma omp parallel { if (b) bar (); else baz (); } } void f4 (void) { if (a) /* { dg-warning "ambiguous" } */ #pragma omp target data map (tofrom: b) if (b) bar (); else baz (); if (a) #pragma omp target data map (tofrom: b) { if (b) bar (); else baz (); } }