cancel-sections-1.c 556 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. /* { dg-do run } */
  2. /* { dg-set-target-env-var OMP_CANCELLATION "true" } */
  3. #include <stdlib.h>
  4. #include <omp.h>
  5. int
  6. main ()
  7. {
  8. if (!omp_get_cancellation ())
  9. return 0;
  10. #pragma omp parallel num_threads (32)
  11. {
  12. #pragma omp sections
  13. {
  14. {
  15. #pragma omp cancel sections
  16. abort ();
  17. }
  18. #pragma omp section
  19. {
  20. #pragma omp cancel sections
  21. abort ();
  22. }
  23. #pragma omp section
  24. {
  25. #pragma omp cancel sections
  26. abort ();
  27. }
  28. #pragma omp section
  29. {
  30. #pragma omp cancel sections
  31. abort ();
  32. }
  33. }
  34. }
  35. return 0;
  36. }