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

    <tr>
        <th>Summary</th>
        <td>
            Incorrect implicit int behavior
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            bug,
            c,
            accepts-invalid,
            clang:diagnostics
      </td>
    </tr>

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

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

<pre>
    Clang currently accepts the following invalid C code:
```
void func(*);
```
It treats it as though the user had written:
```
void func(int *);
```
No other C compiler accepts it, and indeed, the implicit int rules in C89 do not allow it (see C89 3.5.2 and 3.5.4.1). Clang should reject this code as being invalid.

https://godbolt.org/z/qWTc73WeG


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyNUs2O2yAQfhp8QWsRMM764EOSVau99FRpzxjGNhWBFHBW26fvQLPatKqqStjMaMbz_YynYN7Gk1N-oXqLEXx2b1RpDZecaF6BzsG58Gqxbv1VOWvoiepggIgDYU-EHUjPbqem14At8-Y14Y-EHwgfiDj-tfM50xxBIY7NVBW0sC1rBd0SRLoqQ1-jzRn8_4BZn-m_Ab8EGnB6rArOF-swfJdqM-EnqrxBmQbAlKwwseeLsxoJlvFxc4Ctnp4eB2oC9QGJF3uKAqSQAGpJtLLldViJunaHpFr6y-WEKp2hEb6BRgNWm6qdxYAJ7mxubxLqe835kooJ_BOeJZgpuNyGuGD2A5_vL1_1XrzA5_uPGjMKM4hBNdlmB-Oz1wE3jKi_iZpgVVcbYrNFN_4BZPO6TS2ahYlz1_fr4RJDoY-pTWmDhIHsWC-bdRw6MTHD-57z3X6e94xrJVgnBt7tu92sGqcmcGkk8kg4nzaUwIvZeOmP8LaWh5sZdz3FRCRorFp8SNnqVIryqbEjZ7ycbjdILmQ770zPxKNkQknZSyAdg7Oyri0SinlNHKsaJJGw6GzK6aOoUrKLB6hMcb7a8AeN40HF4I-49bPyTVU_Vuk_AQDoAZc">