<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/153082>153082</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            ICE with statement expression + builtin: Assertion failed: (!isValueDependent() && "Expression evaluator can't be called on a dependent expression.")
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          comex
      </td>
    </tr>
</table>

<pre>
    As of 1a502da7084abf03f0ff3ba852b94ca217892730, this code:
```cpp
template <typename T> void f() {
 __builtin_expect_with_probability(0, 0, ({ 0; }));
}
```
produces:
```
% ~/src/llvm/build/bin/clang++ -fsyntax-only file.cpp
Assertion failed: (!isValueDependent() && "Expression evaluator can't be called on a dependent expression."), function EvaluateAsConstantExpr, file ExprConstant.cpp, line 17122.
```
WIthout the template, the function compiles successfully.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJzEUs-OszYQf5rhMtrIDHGAAweS3UjfvWqPkbGH4MrYCJv9Npc-e2X2S7fdFyiyAMuemd8_FaO9e-YO5Bnka6G2NIW102Hmj2II5tH1EcOIpZKCjKpFc1TDKKpRjGM1qEbS0B61orJuWqorAXTBNNmIOhiGqgfRw0l8Lr0sIPrE8-JUYoTqkh4LezUz_gbVG74Ha3AEaoBahPoMosfbbdisS9bf-GNhnW4_bZpuyxoGNVhn0wOo2Yfur1xbn1FAdUaoX4HavKrcKW__hQVEv6zBbJrjN5T5nyT-BXSNqwa6Ovc-A10zDpO_1gNdtVP-DnQGOuPLGB8-qY-X4N0DR-v48Em1j5HXZIPHUVnHBqp-h0iljb8rt_ErL-wN-_QkTSegEwLR28eycoy5lt-V21QKK2rlgeqEA6NWzrHB4FGheXZB_qfqAEQ7_QuOm9c7iLfPRtzHS_AxKZ_ylP2KdYx58zzYCdAFnfWMZV0SHb5p9MePNIUtYZoYn5Z-ms9fE3WYF-s4Yty05hjHzbnHoTBdZdqqVQV3ZS2P7VEeW1lMHZeS5Xii0pi6UUM7nBrZmv1R4mSGwnYkSIqmLEnIspKHWhiWamiYqlKLE8NR8KysO2TTDmG9FzbGjbtSVqKhwqmBXdyzTuT5J-6nWSr5WqxdLnoZtnuEo3A2pvjVJtnkuPtxecMcQIxJJZ7_KznmLPxKa3b6_3e_2FbXTSkte8bpCnS92zRtw0GH-SvZO-1lDX-yTkDXXZMIdP0l2ntHfwcAAP__VcBNoA">