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

    <tr>
        <th>Summary</th>
        <td>
            Invalid use of constinit, constexpr, and consteval in function parameter not diagnosed
        </td>
    </tr>

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

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

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

<pre>
    Clang does not emit diagnostics when constinit, constexpr and consteval are used incorrectly in a function parameter. These specifiers are invalid in this context per the C++ standard and should trigger a diagnostic error during parsing or semantic analysis.

### **Example:**
```cpp 
void func(constinit float consteval* haha) {}
```

### **Expectation:**
Clear diagnostic messages indicating misuse of both keywords.

### **Reality:**
No diagnostic at the point of declaration. Compilation fails later or proceeds incorrectly depending on toolchain behavior.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx0U89uszgQfxpzGRWBSQo5cEjSjbSXPaz2BQZ7gNk1NusxafP2nyDR11RqpZHQCHt-f8Y_FOHBE7Vqf1L7twyXNIbYkvyPWRfsrT079APYQAI-JKCJE1jGwQdJbATeR_JggpfEnpPS53tDH3ME9PbRXdEBRoJFyAJ7E2Ikk9wN2ANCv3iTOHiYMeJEiWIO_4wkBDKT4Z4pynad_RUdrxMgjSzr8EQfCWaKkEaCs9InpU8gCb3FaDcGMobFWUiRh4Ei4BN9oBhDBLtE9sOKLus3RBCa0K8H0KO7CUuuiuNauroXKH1U-vjHB06zI1Ud7_165LW4l5lnUMXxGthuCpVufvsEvQuYPs1R-ggjjqj0AVR9UvXb86SfsGcyCVfjnvHPjjA-a5xIBAcSYG_ZYFolTiyLEIQeupBG-I9u7yHan1T-Teg43Z5R_grPEJg2--fAPq1DLRmHcaOWwzlMM7utgR7ZCThMFFeb5xgMkZUvT8LSTN5ui_CQQnBmRPbQ0YhXDjHPbFvZQ3XAjNqy3le1rouiyca27I0ptbaVbkzTFLaqy7q2uGuaqtrZqsm41YXeF7VuykZX-jW3Fm3X0Wtf7A_9zhRqV9CE7HLnrlMe4pCxyEJtuS-LssocduRki4rWnt5h-6u0XpMT2_XSS7cMonaFY0nyOSZxctT--Xi-D-u_T83afA0O-28SsqXxsQKy2RJdO6Y0y7aki9KXgdO4dLkJk9KXlcjj8zLH8C-ZpPRloy9KXx76rq3-FQAA___fg1oJ">