| // RUN: %libomp-compile-and-run | |
| #include <stdio.h> | |
| #include <omp.h> | |
| #include "omp_my_sleep.h" | |
| /* | |
| * This test creates tasks that themselves create a new task. | |
| * The runtime has to take care that they are correctly freed. | |
| */ | |
| int main() | |
| { | |
| #pragma omp task | |
| { | |
| #pragma omp task | |
| { | |
| my_sleep( 0.1 ); | |
| } | |
| } | |
| #pragma omp parallel num_threads(2) | |
| { | |
| #pragma omp single | |
| #pragma omp task | |
| { | |
| #pragma omp task | |
| { | |
| my_sleep( 0.1 ); | |
| } | |
| } | |
| } | |
| printf("pass\n"); | |
| return 0; | |
| } |