<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60874>60874</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[flang][OpenMP] Compilation error of variable specified in the FIRSTPRIVATE and REDUCTION clauses in TASK construct
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ohno-fj
</td>
</tr>
</table>
<pre>
```
Version of flang-new : 17.0.0(3e0866bf616bf7b293cec93d06d030dd11d7911f)
```
Variable specified in the `FIRSTPRIVATE` and `REDUCTION` clauses in `TASK` construct result in a compile-time error.
The following are the test program, flang-new, gfortran and ifort compilation result.
omp3_task_nested_007_3.f90:
```fortran
subroutine SUB00()
integer(4)::i,j,a
a=100
!$omp task firstprivate(a)
!$omp parallel do reduction(+:a)
do i=1,10
do j=1,100
a=a+j
end do
end do
!$omp end parallel do
write(6,*) "inside : a = ", a ! a = 50600
!$omp end task
write(6,*) "outside : a = ", a ! a = 100
end subroutine SUB00
program MAIN
!$omp parallel
call SUB00()
!$omp end parallel
end program MAIN
```
```
$ flang-new -flang-experimental-exec -fopenmp omp3_task_nested_007_3.f90
error: Semantic errors in omp3_task_nested_007_3.f90
./omp3_task_nested_007_3.f90:5:19: error: REDUCTION variable 'a' is FIRSTPRIVATE in outer context must be shared in the parallel regions to which any of the worksharing regions arising from the worksharing construct bind.
!$omp parallel do reduction(+:a)
^^^^^^^^^^^^^^
$
```
```
$ gfortran -fopenmp omp3_task_nested_007_3.f90
$
```
```
$ ifort -qopenmp omp3_task_nested_007_3.f90
$
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJykVVlv2zgQ_jXjl4ENirqsBz8odg0Eix5I0r4GlDiymUqklqSS9N8vKF9qkmbbXUBIzI_HN-c3wjm100QrSK8g3czE4PfGrsxem3nzMKuM_LGCjB0_tgFWfiPrlNFoGmxaoXdzTU8IcYlRvmALBnwZE1tmWdVkUVY1ecWLuKa6iCXLJIuZlFEk8yKKGuDF4ckXDEceYZWoWkLXU60aRRKVRr8nhIxtr29u777cXH8r7z5AxlBoGeCbD5uv67vrz58CVrdicOTCLcjYXXn714ga7bwdao-W3ND6sC2wNl2vWpp71RGStcYuprbc7Qkb07bmSekdCkujHZ6cx96anRUd8PUlHGGxa4z1VujRNBUWRxLhQ_QO5D-RHP6aro_vvXDf7zU5T_Kesfw-XjQFg7h8Ea4jxQF1Q2XN4JUmvP16xUIizgFGVNrTjizwZRLQuIS4VMDXD8DX4nRIQLyJ2CkLPAKemK7HYA02yjrfW_UoPAFfikvyzud6YUXbUovSoCU51MHT0YwriEsxsUYaVIEL-DpiJxBH_OGMTzfwYJwAfvUwgUlLlOYETFcXqwI6sex0-Mmq0ZEM-Bp4CbxA4FxppyThWM8CId4EMKRTIAKPjljKstdRCjwhUkeCt983gx8J3n__7Ht481VeJ8VyLD78WF5_-lU2Tg7Xom1fV8bbcbqwv8HwVrO-BHkyEYf54Sc992RVR9qLdk7PVOO8MT3prsd3iv5gSejIELNb6oT2qj706Njb_3Z3AXz7blOlEJdRaAk805x1BB9PKgQ8F8BzVA6n4jNaMHiyQVg8PXvsBuexInR7YS-ada5ASztltENv8Gmv6j0K_SNoaTj0ZOz3cC2IzOmcsMqFdWNN9-rQRcwqpeXilOr_0JKQfvjd75ThPyuHsx7-dtL_mOKgsvO__-f7M7mKZREXYkarKMuzZR6zJZvtV6Io6qQWy5R4llbJknFZJSzJKUuqvBByplac8ZhxzljGkoQtqiip-JJqSbWQjHNIGHVCtYu2fewWxu5myrmBVhlb5smsFRW1bhzFnIfGGTeDQKSbmV2FO_Nq2DlIWKucd5dXvPLtOMPHToN0A-nV5570xy-QbnA9mTtjiYd6e_zleP2pvMP0unTDZKSGeXqpv9lg29Xe-96F0cK3wLc75fdDtahNB3wbLD3-m_fWPFDtgW9H_xzw7ej_PwEAAP__HeJ_bQ">