pr86660.c 356 B

12345678910111213141516171819202122232425262728
  1. /* PR middle-end/86660 */
  2. #pragma omp declare target
  3. int v[20];
  4. void
  5. foo (void)
  6. {
  7. if (v[7] != 2)
  8. __builtin_abort ();
  9. v[7] = 1;
  10. }
  11. #pragma omp end declare target
  12. int
  13. main ()
  14. {
  15. v[5] = 8;
  16. v[7] = 2;
  17. #pragma omp target map (always, tofrom: v)
  18. {
  19. foo ();
  20. v[5] = 3;
  21. }
  22. if (v[7] != 1 || v[5] != 3)
  23. __builtin_abort ();
  24. return 0;
  25. }