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

    <tr>
        <th>Summary</th>
        <td>
            [clang-format] nested angle brackets inside concept definition lead to incorrect interpretation
        </td>
    </tr>

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

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

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

<pre>
    Input:
```cpp
#include <concepts>
#include <iterator>

template <class _InIt, class _OutIt>
concept _Can_reread_dest =
    std::forward_iterator<_OutIt> && std::same_as < std::iter_value_t<_InIt>,
std::iter_value_t < _OutIt >> ;
```

Output(without .clang-format file):
```cpp
#include <concepts>
#include <iterator>

template <class _InIt, class _OutIt>
concept _Can_reread_dest =
    std::forward_iterator<_OutIt> && std::same_as < std::iter_value_t<_InIt>,
std::iter_value_t < _OutIt >> ;
```

`<` after `std::same_as` are all parsed as less-than instead of angle brackets thus spaces are added before and after
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztU02PmzAQ_TXmYiXCNvngwCFLWimn9h8gg4fEXccge9io_75jSJrtas89LbJgxjPz3vOMaQfzuzr5cUKmDiw_svzAtvmyunG870hlfecmA5ypuht8ByNGpr59FrYIQeMQnuH5jXAdncYFwekYeXPyJ2Sy5nf3x4TkP6ruLLyptW8CBNCmMRCR6o9LBqcnokm61aEfwk0H0zzZ67-AnMktrWdy1FdodExSnpupsnnTboIGU_WsjtTIeqH7NHGGWIh4Sk5k6uVDH9-3gVJTr-X-ZvEyTMjXdHp_XpH-q0beWwdMll-z-B-zSK6q6c11TzicrI-y5mAArp3jow4RDCetDmJc4UV7bn1E6gYfek5TdMDboLtXwMjxMkUeR91BXBCMoeIWqDnkeLNwZqZSplSlztCig4ptXt7fB7Y5ck-NTrT_whOxpRk_JmOgt96iHTyJIz04UEY3hAAdkkVMYwDUKSGbgqsuiGNMJ5XfaZ3pLk7tuhuu5Dj39visxjD8IgRybYwTRDI2RVmo7FIZIdt8227ErgdR7PtS5LLYt0LvtqLMxS5zugUX04mYlB5ufIYgmw6V2UrmUuaF2OZ7JfNyvd8Iocu2K4XcCSUEK3K4auvWScd6COcsVLOkdjpHCjobMT6DdGnt2cPcwISvJ_q7QvUzgAHn7Ws2k1ez-D_ePIfj">