1  int
       2  main (void)
       3  {
       4    unsigned val = 0;
       5  
       6  #pragma omp target map(tofrom: val)
       7  #pragma omp simd
       8    for (int i = 0 ; i < 1 ; i++)
       9      {
      10  #pragma omp atomic update
      11        val = val + 1;
      12      }
      13  
      14    if (val != 1)
      15      __builtin_abort ();
      16  
      17    return 0;
      18  }