<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60783>60783</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[OpenMP] Metadirective with ifdef doesn't compile
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
TApplencourt
</td>
</tr>
</table>
<pre>
```
$cat test.cpp
int main() {
int N = 100;
#ifdef USE_OMP
constexpr bool use_omp=true;
#else
constexpr bool use_omp=false;
#endif
#pragma omp metadirective \
when(user={condition(use_omp)}: parallel for)
for (int i=0; i < N; i++) {}
}
$clang++ -fopenmp test.cpp
meta.cpp:5:61: error: expected expression
when(user={condition(use_omp)}: parallel for)
^
1 error generated.
```
Removing the ifdef, make the code working.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysU8tu4zoM_Rp6QzRwJD8XXiR1s-sD97EuFJl2dCtLgiQ3vX8_8GOadoDZjSHAFEUenUORIgQ1GKIG8iPkbSKmeLG--efgnCYj7eRjcrbd_w0U6bbSFtIDsEyKiJFC3EnnVqcyEUehDLAKWI1QHlc_IuJ89oTAW9ynKfDjTxiu-o56_Pfvh9fnx5dbPEprQqQP5_FsrcYp0KsdHfA2-om-ApAOtOX9NqcXc9DXJNOpftvd7gTGnRfDKNCODkeKolOeZFTvhJDff4m8fdcLzYKnQB54C-VRWtOpqOzmXRiwGsoW-AGd8EJr0thbP3tviL31CKya66SAt3ONUCHwe3xaTGDHZa11LduN_Kfx-SxamGENxrveOjKj--WdZmHLjh9y4IdiPzMj761fjA9HMlI3G55CmJWsNP-EVMgfVmu_3ogDGfIiUrfbJHxvtL9otO_KDBgvhEuvALvHUbzR4pG2I7xa_6bMsAEkXcO7mtcioWZflEVWVVVeJpemTLOuk_Lc54UoRVEVrBAi63IuRVpkrEpUw1LGU7bP9zVL83wny70QdcZkVRd1VteQpTQKpXdav48764dEhTBRU6RlxRMtzqTDMkmMGbricgiMzYPlmznn7jwNAbJUqxDDDSWqqJcRfHZkHl8gb_HxW_NdVbys6rGzFAywMqK0o1Oaksnr5hKjC8APwE7AToOKl-m8k3YEdppv2X53ztv_SEZgp4VbAHZauP8IAAD__xWKMe0">