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

    <tr>
        <th>Summary</th>
        <td>
            [clang-tidy] modernize-loop-convert for pointer and size
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    When working with a C API, I often receive arrays as a separate pointer and size. I'd like this pattern to be supported by modernize-loop-convert:

```c++
void foo(int* array, int size)
{
 for(int i = 0; i < size; i++)
        std::cout << array[i];
}
```
To become something like this:
```c++
void foo(int* array, int size)
{
 for(int i : std::span(array, size))
        std::cout << i;
}
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyskkGPmz4QxT-NuYwSGRsWcuBAEkXK7X_4Sz0bPIC7xkb2kFX201cm2d1KbdVL0UiA9J7n98ajYjSjQ2xYeWTlOVMrTT40to_eaYxZ5_W9-TahgzcfXo0b4c3QBApO0P53ZeIEV_ADoYOAPZobggpB3SOoCAoiLiooQli8cYQBlNMQzTvu4cpEpcGaVwSaTIRFEWFwQB46hLguiw-EGro7zF5jcOYdd9b7Zdd7d8NATLaMb_XCH9UzcUzF25s3GgbvmaiNIybaB1XCNY42AiYOyVslOQw-PKRggMkzcCaP2-fpoU1_z8M3GzyfSDphyLb3KyV5cjxalUfDyjOTx63L-WdOxtv_U8rezwjRz0hTGuznLJ7J_nWs9gs3LsoxUX-6P5x_D2d-myjTjdQHeVAZNnlV8ryoORfZ1AxVVWDFVa1riVJWdZ1reZC6GvqyrlFmphFclPwlr3idSyH2eVXnL7LvChy6ruMHVnCclbF7a2_z3ocxMzGu2ORFUVRlZlWHNn5sb2iSatetY2QFtyZS_PKRIbvteW-VG3dk9J2V5z9sV5rdL1ubrcE2E9GyXZG4MHEZDU1rt-_9zMQltXq-dkvw37EnJi4bb2Ti8kS-NeJHAAAA__8nTQuD">