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

    <tr>
        <th>Summary</th>
        <td>
            [clang-doc] template operator T() produces a bad name
        </td>
    </tr>

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

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

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

<pre>
    This operator:
```cpp
  template <SignedPrimitiveInteger U>
    requires(::sus::mem::size_of<U>() >= ::sus::mem::size_of<PrimitiveT>())
  constexpr inline explicit operator U() const {
    return primitive_value;
  } 
```
Produces this docs:
```
operator type-parameter-0-0
public U operator type-parameter-0-0()

```
Which could be greatly improved by just saying "conversion operator to type U. But should also include the concept SignedPrimitiveInteger as the conversion is only valid to a matching type.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyEk1tv6ygQxz8Nfhklwji-PfihbTbSvlXaRvtYYTyx6WJgueQ059MfYSdpda4SkgH_Z37D6D_cezlqxI6Uj6TcZzyGybhu4Jr_95b1Zrh0L5P0YCw6HowjxQOhe0IfSEXXJaxdbwACzlbxgECKp39S2uHZyVkGeca_dcARHRxJ8ddNDuDw_ygdesKalLh48NGvmxnn6438iq_mRIqnJZQ1hLWQdsUe_hxz57_cg9O6FiCM9gHfrQOpldQI-G6VFDLcnwvHK3GRAqkfPxcfotNgb4jXM1cRSXGXkHoP3zVrPT47M0SBHkJq7WCE_7Gt6_FeR7hY3Fju-IwB3YZurgIbeyUFHOF3yvXda_6fUf6dpJhAmKgG6BFGhzyoC8jZOnPGAfoLvEUfwPOL1CMQxoTRZ3ReGv0JbBY2HLfwGAP4acnHlTcgtVBxQAgTpk4KtAF-YRDub6obILlPqwucuZJDonCYeRBTKiUBt9nQFUNbtDzDLq9qVrdl09Js6njPq6Ys66oq61NDeV7t-lZQehKnvBE5zWTHKCtoTnc0L_KCbkXR1Cesd1VZ1qzHmuwozlyqrVLneWvcmEnvI3Zl2-QsU7xH5ZfRYUzjF1h-EsbSJLkuxWz6OHqyo0r64D-yBBnUMnNCcT1uBiNIuf-Yn3tPX672szfHcOj5AJrPmEWnuikEu5iHHQg7jDJMsd8KMxN2SKzrZ2OdeUMRCDssFXrCDssLvgUAAP__JjhBcg">