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

    <tr>
        <th>Summary</th>
        <td>
            Clang rejects valid constraint
        </td>
    </tr>

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

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

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

<pre>
    The following valid program is rejected by clang but accepted by gcc and msvc. [Demo](https://godbolt.org/z/qf84qnn5v)

```
#include <iostream>
#include <type_traits>
#include <vector>
#include <string>
#include <functional>
#include <map>
#include <algorithm>
using namespace std;
struct t {
    constexpr auto b() const noexcept
    { return true; }
};

template<typename T>
concept c = requires (T t) {
    requires t.b();
};

static_assert(c<t>);
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx1U9tyozAM_RrzolmGcAnkgYe22f2CvHeMrRB3jE1skTb79SsIbfYWxhhbRz46yFLn9bU9nBCO3lr_blwPF2mNhjH4PsgBTISAb6gINXRXUFaySzcRSKVwXK29UiCdhiFeVAqiet7j4EW1F3lzIhqjKJ5E_oNH73XnLaU-9Lz7ye_52JRn56qLyHci24vsaZ232Tpu27wwTtlJI4jixfhIAeUgiu__g-k64isFaSg-8LjwD_nwAGRuzsMD8Dg5RcY7aR84DHJ8gEjb-2DodJc9xTnhTg4YR6kQImlRPN8wVjEpAgJRrxbgR3kXCT_GAHIiDx1nmBN3M4Pz-DFfyt2dz_L10RQcMB0yOZv2qzhefAa7zYTDaCXhmsJZFxy-xHKMmRwU_8ueWc-TCRiBFRyAZhF_CP3CKV1F3oP9EziSJKNeZYwYmKpRs4I58O-nPgsiwXaz3dZlU5Z1k-i20LtiJxMyZLF9WerzVrFxLeUlOVwNjpIp2PaviuQLmbpU-YE31l4-P9-4AWYS3poYJ4y8qJq6qZJT25VKd7sSt0ep8qZqikofs22FjdrU9UaWiZUd2thyI4g8d_gOCwWvuScS0-ZZnm82WbEps7qqU2zqvKx1o3ReHasuE2WGgzQ2nXXMrZKEdpHUTX1k0JpI8Q5y1kzvEJdwzM-FcfKhDdJJ6bwfkyV4u4j_BXQ9MXk">