1  void f0 (void);
       2  
       3  void
       4  f1 (int *p)
       5  {
       6    int i;
       7    #pragma omp task if (0) if (0)		/* { dg-error "too many 'if' clauses without modifier" } */
       8    f0 ();
       9    #pragma omp task if (0) if (1)		/* { dg-error "too many 'if' clauses without modifier" } */
      10    f0 ();
      11    #pragma omp task if (task:0) if (task:0)	/* { dg-error "too many 'if' clauses with 'task' modifier" } */
      12    f0 ();
      13    #pragma omp task if (task:0) if (1)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      14    f0 ();
      15    #pragma omp task if (0) if (task:1)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      16    f0 ();
      17    #pragma omp taskloop if (0) if (0)		/* { dg-error "too many 'if' clauses without modifier" } */
      18    for (i = 0; i < 8; ++i)
      19      f0 ();
      20    #pragma omp taskloop if (0) if (1)		/* { dg-error "too many 'if' clauses without modifier" } */
      21    for (i = 0; i < 8; ++i)
      22      f0 ();
      23    #pragma omp taskloop if (taskloop:0) if (taskloop:0)	/* { dg-error "too many 'if' clauses with 'taskloop' modifier" } */
      24    for (i = 0; i < 8; ++i)
      25      f0 ();
      26    #pragma omp taskloop if (taskloop:0) if (1)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      27    for (i = 0; i < 8; ++i)
      28      f0 ();
      29    #pragma omp taskloop if (0) if (taskloop:0)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      30    for (i = 0; i < 8; ++i)
      31      f0 ();
      32    #pragma omp target data if (1) if (1) map (alloc: i)		/* { dg-error "too many 'if' clauses without modifier" } */
      33    f0 ();
      34    #pragma omp target data if (target data: 1) if (target data:0) map (alloc: i)	/* { dg-error "too many 'if' clauses with 'target data' modifier" } */
      35    f0 ();
      36    #pragma omp target data if (1) if (target data:0) map (alloc: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      37    f0 ();
      38    #pragma omp target data if (target data: 1) if (0) map (alloc: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      39    f0 ();
      40    #pragma omp target enter data if (1) if (1) map (to: i)		/* { dg-error "too many 'if' clauses without modifier" } */
      41    #pragma omp target enter data if (target enter data: 1) if (target enter data:0) map (to: i)	/* { dg-error "too many 'if' clauses with 'target enter data' modifier" } */
      42    #pragma omp target enter data if (1) if (target enter data:0) map (to: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      43    #pragma omp target enter data if (target enter data: 1) if (0) map (to: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      44    #pragma omp target exit data if (1) if (1) map (from: i)		/* { dg-error "too many 'if' clauses without modifier" } */
      45    #pragma omp target exit data if (target exit data: 1) if (target exit data:0) map (from: i)	/* { dg-error "too many 'if' clauses with 'target exit data' modifier" } */
      46    #pragma omp target exit data if (1) if (target exit data:0) map (from: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      47    #pragma omp target exit data if (target exit data: 1) if (0) map (from: i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      48    #pragma omp target if (1) if (1)		/* { dg-error "too many 'if' clauses without modifier" } */
      49    f0 ();
      50    #pragma omp target if (target: 1) if (target:0)	/* { dg-error "too many 'if' clauses with 'target' modifier" } */
      51    f0 ();
      52    #pragma omp target if (1) if (target:0)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      53    f0 ();
      54    #pragma omp target if (target: 1) if (0)		/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      55    f0 ();
      56    #pragma omp target update if (1) if (1) to (i)		/* { dg-error "too many 'if' clauses without modifier" } */
      57    #pragma omp target update if (target update: 1) if (target update:0) to (i)	/* { dg-error "too many 'if' clauses with 'target update' modifier" } */
      58    #pragma omp target update if (1) if (target update:0) to (i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      59    #pragma omp target update if (target update: 1) if (0) to (i)	/* { dg-error "if any 'if' clause has modifier, then all 'if' clauses have to use modifier" } */
      60  }