<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/100951>100951</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang][OpenMP] Execution error when an array that is allocated outside parallel construct is deallocated inside section construct with lastprivate clause in parallel construct
</td>
</tr>
<tr>
<th>Labels</th>
<td>
openmp,
flang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
ohno-fj
</td>
</tr>
</table>
<pre>
```
Version of flang-new : 19.0.0(dcebe297367f48a71a5ecea3bcdd54671195da1b)/AArch64
```
A run-time error occurs when an array that is allocated outside `parallel` construct is deallocated inside `section` construct with `lastprivate` clause in `parallel` construct.
When `lastprivate` clause is removed, execution succeeds.
The following are the test program, Flang-new, Gfortran and ifort compilation/execution result.
FT_OMP_Intrinsic_01_.f90:
```fortran
subroutine s4
complex, allocatable::v(:)
allocate(v(2))
!$omp parallel
!$omp sections lastprivate(v)
!$omp section
deallocate(v)
allocate(v(3))
!$omp end sections
!$omp end parallel
end subroutine s4
program main
call s4
print *,'PASS'
end program main
```
```
$ flang-new -fopenmp FT_OMP_Intrinsic_01_.f90; ./a.out
fatal Fortran runtime error(/work/home/ohno/CT/test/fort/tp/reproducerJ/Metro/HCL_2019_636_647_01/FT_OMP_Intrinsic_01_.f90:2): Assign: mismatching element counts in array assignment (to 2, from 3)
Aborted (core dumped)
$
```
```
$ gfortran -fopenmp FT_OMP_Intrinsic_01_.f90; ./a.out
PASS
$
```
```
$ ifort -qopenmp -diag-disable=10448 FT_OMP_Intrinsic_01_.f90; ./a.out
PASS
$
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0Vd9v4zYM_muUFyKBTNtx_JAHXzPvB3a4Aldsj4EsM7FusuRJcnv33w9y3CRN29twwIDAsSSapMjv-yi8V0dDtGX5B5bvFmIMnXVb2xm7PHxZNLb9tmVrPv_4jvHqD3JeWQP2AActzHFp6AlYWkFSrviKM9y0khrCskjXxSHbiCIROUkSaSPbNs_WRZKUeSuShmHJsK4qJ7t1dnJ-E-v0rMCNZhlUT0DOWQdWytF5eOrIgDAgnBPfIHQigPIgtLZSBGrBjsGrloCt-SCc0Jo0W3OQ1vjgRjlZt3SxV-bZ3JMMypqX1k8qdPFQCx8Gpx5FoMlAi9ETKPNunBXA6SJ_xoTf9-DBUW8fqWV4B_SV5BiTAD9KSdT61XVNHjqCg9XaPilzBOEIQkcQyAcYnD060Ucn9XOD4uLng3XBxXqZFlRcgLT9oLSY7or1JaQjP-rwImD9sP_08X7_qwku1knuebJfHUrO0uqmdXOY064fG2fHoAyBn3s8RdX0NeY0F180mqKjtHpkuIlvWM7G534y3MRDnFAznzJMGGa2H-Bc-Jv9uZMerms-eXrl4rnpc9wLMl7Y3-aTvp0PmfYc-62zl_lO1q8rdXrO_YReqHNyUmh9KSgMTpkADCuGdwyL--rzZ4bFxfdrF28S7XYTsyuKLw92INMP8D4SPsCKYS1WdgzXbg8iCA31jD43mguVY7exfrLuL4Z1Z3tiWEfxYVjfPTCsI6AZ1hFScTUwrB0NzrajJPcbw_ojBRetf7n7fY88KffrdL1fZ8WeJwzr74B2wlFaQTUpYHzrle9FkF0kFGnqyUSCjCb4SO6TyJz0cjpiuAkWMKL44GwP6RkFVWNd1BOGG2kdQTv2QyT1GSTfE7s3enB8Ju6PtAAmMPxY4JNILP-eoy5bJY7LVvkTXXcJz7LN_5LLot2mbZmWYkHbpEBEnhdrvui2bVEmGZdZg21CSZ7mRChFQqVIiiTfZAu1RY4ZL3CDiCXyVSZl2og24U0rN4LWLOPUC6VXWj_2K-uOC-X9SNuE8zJPFlo0pP00DhFP92aIE61w4kJc5buF28bvl8149CzjWvngLx6DCnoaqZP-snzH8g-fBjIf71m-g5_OMnuaZv91jD1Lxr8OsFl3bkfXlQJeDa3XXhej09suhMFPQlwzrI8qdGOzkrZnWMdrzn_LwdkvJCM3pyp6hvVcyMct_hMAAP__2n6Olw">