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

    <tr>
        <th>Summary</th>
        <td>
            clang-tidy misc-use-internal-linkage false positive for function declaration without body
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-tidy
      </td>
    </tr>

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

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

<pre>
    `misc-use-internal-linkage` should only warn for the function declaration with body.

It is a common usage in C++ to declare external function at the beginning.

```c++
void f();

void bar() {
 f();
}
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0kV2O4yAMgE_jvKBUxKFJ88DDdEbV7jFIcBLvEqiAdLa3XzWp1P3RSAgQxp9tfSYlnjyRhuMZjh-FWfMcov5GMb4blp1siz7Yu4ZGLpyGck1Uss8UvXGlY__TTASNFGkOq7MieHcXnyZ6MYYo8kxiXP2QOXhhaXAmmu3-yXkWD-4B5AfIt33_ngUnYcQQliV4sSYzkWAv3gHPgGeRwxNCgn7tLbzwJm_leprYe_bTX2Ro5L6GHbW_3gJbMQKeADuoz38mbKHexD0ooH1G___efvxTorC6tl3dmYJ01daojqe6VcWsiWqJtpeKCG1nVSNraYbmaLAaW9OagjVKVFWFqlLYVOrQK2nlqWlsUw2qUzUoSYthd3DuthxCnApOaSVdVa06nQpnenJpM4k4OOOnMrO9A-LDbNSPrLJfpwRKOk45vTiZsyP9yhFfyhajcYnENSTOfKPN85eOw5o3zcUanZ5zviao3wAvgJeJ87z2hyEsgJdHH8-jvMbwg4YMeNmGS4CX53w3jb8DAAD___PN1lw">