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

    <tr>
        <th>Summary</th>
        <td>
            [clang-format] Pointer asterisk is formatted weirdly in certain cases
        </td>
    </tr>

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

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

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

<pre>
    Before:

```c++
void HardHook::setupInterface(IUnknown *unkn, LONG funcoffset, voidFunc replacement) {
        fods("HardHook: setupInterface: Replacing %p function #%ld", unkn, funcoffset);
        void **ptr = reinterpret_cast< void ** >(unkn);
        ptr        = reinterpret_cast< void ** >(ptr[0]);
        setup(reinterpret_cast< voidFunc >(ptr[funcoffset]), replacement);
}
```

After:

```c++
void HardHook::setupInterface(IUnknown *unkn, LONG funcoffset, voidFunc replacement) {
        fods("HardHook: setupInterface: Replacing %p function #%ld", unkn, funcoffset);
        void **ptr = reinterpret_cast< void ** >(unkn);
        ptr        = reinterpret_cast< void **>(ptr[0]);
        setup(reinterpret_cast< voidFunc >(ptr[funcoffset]), replacement);
}
```

Before:

```c++
                        for (int i = 0; i < h; ++i) {
                                const quint32 *srcimg  = reinterpret_cast< const quint32 * >(img.scanLine(i + h));
                                const quint32 *srcmask = reinterpret_cast< const quint32 * >(img.scanLine(i));

                                quint32 *dstimg  = reinterpret_cast< quint32 * >(out.scanLine(i));
                                quint32 *dstmask = reinterpret_cast< quint32 * >(outmask.scanLine(i));

                                for (int j = 0; j < w; ++j) {
                                        dstmask[j] = srcmask[j];
                                        dstimg[j]  = srcimg[j];
                                }
                        }
```

After:

```c++
                        for (int i = 0; i < h; ++i) {
                                const quint32 *srcimg  = reinterpret_cast< const quint32  *>(img.scanLine(i + h));
                                const quint32 *srcmask = reinterpret_cast< const quint32 * >(img.scanLine(i));

                                quint32 *dstimg  = reinterpret_cast< quint32  *>(out.scanLine(i));
                                quint32 *dstmask = reinterpret_cast< quint32 * >(outmask.scanLine(i));

                                for (int j = 0; j < w; ++j) {
                                        dstmask[j] = srcmask[j];
                                        dstimg[j]  = srcimg[j];
                                }
                        }
```

See my review in mumble-voip/mumble#6543.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsVlGP4jYQ_jWTF2tRGCeQPOQBltI76dRWrfpcGWcSDImd2g6r_feVk7Bw7C7q6R7udLqVtQlD5vvmG39jIpxTtSYqIF1DuolE7_fGFqU4qZJ2JLxVUkU7Uz4Xa6qMJeAriDcQn_8v4nFJwHVYQ_RkVMk-CFt-MOYYMvjKke-7j9qTrYQkwOzj3_qozZNmgKteHzXgI_v0-2-_sqrX0lSVIx9CAWrba8ksdY2Q1JL2gDmD5fpcR16Z0gFmgHjFyW4Y-Yr9OUAoXTPAtBuIvDKhAg6YNiUgBspzNdeF5MAvfIM8wBXgqvOWAd8wSyowdZb8P1I4D3wsfXqMAf8FMBuRP8MKANPf_8fpvIV0HUO6uUEbNANm78EMnbzGuNI4guHjTacv8MvNzZ5fG2FVebI_zfEtzfHdeuMLTg6I83FVxjLATGnP1CA-Br4ebh_ZPtyOWep2u1-WNNp59m-vtOcYOuSsVG39fidfJUzNUG09c1LoT0oHa6rAzPZDPz7r713mVrjjVzO_4rxlvoIonb-r9jWb6f19tvd47mp7kydkfJmyKzscLnY4DHZ4utjh8K4dIM6nUiFdHyDdDCjTzkyhN7WOiaqtz3nnxEvo7byXkXgd-boD9LuZEfZy6PzYM3LR-XNGvumM_EXE2mdm6aToiSnN2r7dNfRwMqoD3I6fAPkiTfgsKgte5jwXERXzJSZJisskjvZFnu3mc5knOWYVSrlIYkmLdMklimqBCY9UgTEmcYYckedxPFvyLJdlVi7FMhdynkMSUytUM2uaUzszto6Ucz0V8zjN8ixqxI4ad36ltkV46mHX1w6SuFHOu0ueV74ZXr5lI3T9UBnbivBzy_4wg0-YcJ6sckemHBu_9VSyJ1K2bJ5DCyRZL8JVOHJRb5ti733nwkmCW8Btrfy-382kaQG3gXe6PHTWHEh6wO1QvAPcTvWfCvwvAAD__yMCayM">