<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/100950>100950</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[Flang][OpenMP] Compilation error of specifying a pointer in a threadprivate directive
</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
```
Specifying a `pointer` in a `threadprivate` directive results in a compilation-time error.
The following are the test program, Flang-new, Gfortran and ifort compilation/execution result.
snggz274_.f90:
```fortran
subroutine ss2
external ::a,x
pointer:: a
!$omp threadprivate(a)
save a
a=>x
call a
end subroutine ss2
subroutine x
end subroutine x
program main
call ss2
print *,'pass'
end program main
```
```
$ flang-new -fopenmp snggz274_.f90
error: loc("/work/home/ohno/CT/test/fort/tp/reproducerJ/Metro/FFE_2016_V20L30_11/snggz274_.f90":1:1): 'omp.threadprivate' op failed to verify that all of {sym_addr, tls_addr} have same type
error: Lowering to LLVM IR failed
error: loc("/work/home/ohno/CT/test/fort/tp/reproducerJ/Metro/FFE_2016_V20L30_11/snggz274_.f90":1:1): cannot be converted to LLVM IR: missing `LLVMTranslationDialectInterface` registration for dialect for op: func.func
error: failed to create the LLVM module
$
```
```
$ gfortran -fopenmp snggz274_.f90; ./a.out
pass
$
```
```
$ ifort -qopenmp -diag-disable=10448 snggz274_.f90; ./a.out
pass
$
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMVU-PqzYQ_zSTixVkBgjhkEM2eVSv2lWrdrXXlYEB_Gpsapvsbj99ZSDdP297aNVDpcTYnvH85v8I52SniQ6Q3UB23ojJ98YeTK_Ntv22qUzzcoAdX3_8DPz4QNZJo5lpWauE7raanhgkRxYXEY844L6pqSIs8mSXt-le5LHIqCaRVHXTZOkuj-Mia0RcARaA5fFo636XLsI_YP06Ui3bF6k7Jhjs-Gik9mRhx5nUy5XvLYlmtPIiPAVCIy3VXl6IWXKT8m5hrc0wSiW8NHrr5UCMrDU2WmHn9b4n1hqlzNMMaIn5npgn59loTWfFAHhi5dXocPihNdZboZnQDZPh8BYIsKRnqqewX7V5B-h01_2BefoYtQWH5PjBB6vslXeqrJm81MScw-WOMXr2ZLVQIQCQHAXg6flKuzprpjCxCscYMDXDyN47DvcihGN96sSFri8YE5CcIflyFVwLpa5E0g37TLPvdH7-lP_5LffqYzYIqa_QM9Ybe0crtWeAR8ATYD4K5wDzV9nfy_g0rz6_xPRNRm9bM5IeRvY-SAtSSJ3gVGVqwD0gApZPxv4GWPZmIMAyVBBgeboHLEMGAZYhnOE0ApaWRmuaqSb7I2B5R94G7rL88og83j0-IL9N-GMcA5bv8REhOcbzH4ugAmBuhjH6EM2cmZG1QipqmDfsQla2L8z3wrPgUdMyyG_cy_AomsaGRPbKLfv8zPoQfScGYv5lpA8m35onsqE-vGG3tw937OsvK9D_zze10Np4VhGrjb6Q9Ys3VrUDxyCdC8bAjofbeyu0W2r3LIWi2n8NJdSKem4tljrpvJ3prDWWNQvTvDdjENhOuo7C8sEbr7GoLQm_tJZZkcE0k6K_UvCf5Wt37T9_k67JDYsASxGZya81NNfMv0NbGtz29xVq20jRbRvpRKUIknPM03T_XyiwaQ5JUySF2NAhzhGRZ3mGm_6Q7BrMeLWv27jI9m1aUCKyfbLbUZFg1RYbeUCOKc9xj4hFjFGbJVWe8ixuWsSiRkg5DUKqSKnLEBnbbaRzEx1izouMb5SoSLl5GiIuZs4ZfALEuTeEU3be2EN4v62mzkHKlXTevUr00qt5os6jArIzZDc_jaTvfobszE6v82GZQaEa3dtBtzbuZW69K-zX4baZrDr03o8u9HcsActO-n6qotoMgGVQZv1sR2u-UR3qa7bVAZaruZcD_hkAAP__EJZokg">