<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/126228>126228</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Clang still fails to compile correct program with consteval in LLVM 19.1.7
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
3manifold
</td>
</tr>
</table>
<pre>
Is it supposed that the issue https://github.com/llvm/llvm-project/issues/105558 was fixed in LLVM 19.1.7? I tried to compile the example in the aforementioned link under `Ubuntu 25.04 (Plucky Puffin)` and still fails.
## clang
```
> clang++ --version
Ubuntu clang version 19.1.7 (1ubuntu1)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm-19/bin
```
```
> clang++ -Wall -std=c++23 playground_main.cpp -o test && ./test
playground_main.cpp:24:40: error: call to consteval function 'foo' is not a constant expression
24 | cout << (make_static<foo().size()>(foo()) | ranges::to<string>());
| ^
playground_main.cpp:24:40: note: pointer to subobject of heap-allocated object is not a constant expression
/usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/allocator.h:193:31: note: heap allocation performed here
193 | return static_cast<_Tp*>(::operator new(__n));
| ^
1 error generated.
```
## gcc
```
> g++ -Wall -std=c++23 playground_main.cpp -o test && ./test
some dynamic data 42
```
## System specs
```
> cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=25.04
DISTRIB_CODENAME=plucky
DISTRIB_DESCRIPTION="Ubuntu Plucky Puffin (development branch)"
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJysVd2O4jgTfZripkTk2CGQCy7SQCSk-dN0f99eIicpgnccO7Kd_tmnXzmkZ5ie2dmVdlEE2FVOVZ3jOiW9V50h2sLqDlb7hRzDxbqt6KVRZ6vbRW3bl-3Rowrox2GwnloMFxkwXAiV9yPhJYTBgyiBV8CrToXLWCeN7YFXWj--_iwHZ3-nJgCvpmMeeJWy1Wq1wSfp8ayeqUVl8N27_7_HtEjSZA2iwiMGp2JMi43tB6VpikzPsh80xQNxKc_WUU8mKGuoRa3MFxxNSw4hZ_-rRxNG5KuEZQh880mPzZcX_DSez8oALyBnKE2LPiit8SyV9gkCK-PDBXCBjZami8uczQ8rQRzmfX4H_A6Xy0dyXlkDrJwjTmact-eaYgLpONnTGJuVD9J1FECU-LzJT3m2HJqlVmZ8XnZmjPaLI9lib1vS0WuwXj0DK4_GB6k1tXvl4j7wavQuoq3qV8zTAnhVK_M291_V8ZvUGpc-tCD2zXWTCxy0fOmcHU176qUySTMMiLi0GMgHBJ4DzzEBXsU1sPIn_iBKnoEoMxbTJefslHcT4030Gh_oUWo8j6aJTCLw9dla4GtUHo0NKK9e0gSk58GRnwFHRJ4hrHfY2DEgiB2IXYS6l1_o5IMMqgGxm162AV4kXv1B178gDsA3Xy3Ai-k9TpqOplstymBB7HxwynRX76sfiLtraMTpCKwO_6RwYwNdeVQmkIul-7G2dWwOtGe8kByWUmvbyEAtzoa_AeAN-V3TAK_m-_TtMvEqzYBXSfLjlzKNHlsCXs2cvzrXKsRWnROyLrmAKNNCgChFeltPzBtnt0jeQO5sXU8tXsjRhFRaiAmp24-jMDqDV45OjfQBxO70MAAvZ7AnDuxALoZHQ0_AN6eT-RUJ6fV6YUcmHqM2eXvrv_Z2hOrHjviPu8HbnrB9MbJXDbYySMz4X2Z0_-ID9egHavzPmlXGCBWFSLH29dKRJukjwvvj_cPn493puAexv4rQze7nw7tDeX8AsZ-k8May-7g_fCjfR9MwieONbX-4330-fno4fvwAYg-cz-L2nYrGVmvpkbQdogpj7aRpLhNDb-tctFvRFqKQC9qma7EpeJ4JvrhsNywTq1SyM8_YWa5kKiijXNZZ2qRp2uYLteWMrxhn6zRl65QlTOTFqs5ZzkW7LtICMka9VDqJ2pdY1y2mSbNNec75ZqFlTdq_Tjq3nRSyHjsPGdPKB__tXFBB03Y36ffNWLidQo11Ljbm4GznZI9PKlxuNOz7SbYYnd7-izl5LeBxy_8MAAD___epUeQ">