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

    <tr>
        <th>Summary</th>
        <td>
            clang-format 14 wrongly indents `while [[unlikely]]`
        </td>
    </tr>

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

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

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

<pre>
    clang-format 14 wrongly indents bodies of `while` loops which are annotated with `[[unlikely]]`

Here is a diff of how clang-format would reformat one of my functions:

```
 static inline void trimTrailingZeros(const char* begin, const char*& limit) {
    while ((begin != limit) && (limit[-1] == '0')) [[unlikely]] {
-      --limit;
-   }
+         --limit;
+      }
 }
 ```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyFUs2O4yAMfhpysVIR8tc55NBuVe0D7GlvJDgJswQqII369uuk7UxnNdIiB7D92f5i3Dp1azoj7ZD2zk8yQlbA4p0dzA20VWhjgNYpjQFcD6ziy6gN0gnGuUsAUrsRpEeQ1rooIypYdBxXKCuPJLM1-g-aGytPq5CZnxg_3PefSJE6gASl-34tMboFvhBa3GwUeHyozuIKm27Qz7aL2tnA8sNrzrXEXTYVArHSHf2N0RR7dVpB9Hr65aUmy_AbvQtM7DvKFKEbpWfiAC0O2jLxA76YmajA6ElHJt6A1cdHBVpbW4DSkGyxdM9YfnqBi2oNJ__dVB7TjBoCBFpxTNScPkJu4G9a91kwhW2l6T1T_mJm9enRBXGE5_oX-OH7QL_enu1LVJOrt_xNJlFHg_8dk-dwfEt-zTd704wxXrYHE2eSgSZlbnedm0gx5vo80ot379hR3846hBnpfc5luS_zZGx4VRRir6petrXArq65qopMtqVAVQvZJ0a2aEKzshDC4gJbCroTjUQ3ggvBK55nWVYV1U51QipZttgL3u55yQqOE03GbuWxc35IfLNRauchkNPoEMOnU4agB4u4laP8co6j883VDcRhwEAtS7b6zcb_L6pDB3Y">