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

    <tr>
        <th>Summary</th>
        <td>
            clang++: out-of-line definition of member function of explicitly specialized template class specialized using a constraint is rejected
        </td>
    </tr>

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

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

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

<pre>
    Example code:

```
#include <concepts>

template <typename T>
struct foo {
  void bar();
};

template <std::integral T>
struct foo<T> {
    void bar();
};

template <std::integral T>
void foo<T>::bar() {}
```

Compiler explorer link: https://godbolt.org/z/r6e6cj9Px
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0Uk1yozwQPU2zUdkFLVvAgoVjh_W3-C4gpAYrIyRKEhk7p58CO3ZmJtup6mpQ_7zXemoZoxkcUQP7F9ifMjmnsw8NaeetdFnn9bV5vchxssSU1wT8APkJ8k8v8rvdjsiNU3bWxIAflXeKphSBv37tSTROVqa1JF0ncnIk9v-jKKYwq8R67xmUL7cYY-_eaNbJAFgB1sDvCShPz_-_0GPSy7z8YFyiIUj7LQ3w4xL-yvYP-FbAJ9ut7kGwkpen70Vd_dGPk7EUGF0m6wMFZo37AfzAzilNccHDFrAdvO68TVsfBsD2A7ANgoR6q_-7ZLrhuua1zKgpRFnvip3AOjs3peJCCN7XUhWSqp6wwIp3ZVHVldgjz0yDOfKcY1GInO_qLUeeY12KPfVFIUQNu5xGaezW2vdx4c5MjDM1othXIrOyIxvXFUN09JOtSUBcNi40S8-mm4cIu9yamOITJZlkqVFWugHwZTF-YH5OG99vrHHENPXGmWS8Y75nI40dBdbPTn2GFrmMMsleWZxIGWnNB2n2eDZlZYy_peZo3MAkU97FFKRxiZnIAr2RSqSzOdjmD8lNOs_dVvkRsF1Gv382U_BLE2C7XjgCtqsgvwIAAP__cQgKqQ">