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

    <tr>
        <th>Summary</th>
        <td>
            [libc++/clang] std::ranges::views::take does not work with | operator
        </td>
    </tr>

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

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

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

<pre>
    The following code in C++20:

```
#include <vector>
#include <ranges>


int main()
{
        std::vector<int> i_vec({1, 2, 3});
        auto rng = i_vec | std::ranges::views::take(2);
        return 0;
}

```

Produces the following error in Clang 14.00:
<source>:8:19: error: invalid operands to binary expression ('std::vector<int>' and '_Partial<std::ranges::views::_Take, decay_t<int>>' (aka '_Partial<std::ranges::views::_Take, int>'))
        auto rng = i_vec | std::ranges::views::take(2);

Godbolt: https://godbolt.org/z/c35r4Pa1h

The code as far as I can tell, is valid and works in GCC11 and MSVC 2022.
Unsure whether this is a libc++ or clang bug.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJytVE2P2yAQ_TX4MmpkQxzHBx8Sp7vqodJK3fYaYUxiuixEgDdNf30HnGx2V_1S1Qhjw8y8efMY0tn-1NwPEnZWa3tUZg_C9hKUgZbQNQ6aE7Yi-Ybkl3mRn8e0pEwZoUcMIqx9kiJYR9j7nxkdN3vpr8YXszIBHrkyhC4Jrc-Wan1xqX3oIw22uiRoMQKRQG1xJ0ZV64LQFmicGKk2EYZdAfgYLDgsj7DNFASkauEZ98It5VDyeP4M_EEiOn2D5mQYnYH8uocJf6NRmu-c7UchPYRXekvnrEuCa-QAxXyWv5Cctd6OTsioGlst8SmQyWqKih_KPHGterAHiTX0iG6hU4a7E8hvBye9V9ZA0rX6lYpoAoxFr2p7x11QXMfEf9Bme5_EaaGXgp-24Qo3IWJO_sD_FfSZWZT-0hJw_v3X04zzre07q0MUdAjhkPzpDY79ZJhZt8fVd3wEK938jhfDy_h4hdLF4R523MXXBxDcQJBap3I8TOcUdT5a9-Djkd-2bVGkrY-fvmDz5pTOJsDPxo9OwnGQ2C0OWwYBcHDQqhPTzQRsG5F6phv3s6xvWF-zmmdBBS0bUq6vrpF29CTl5q9Egt5inxobElU4qjAkgVOTYedko9PNG6HQZ-xmwj7iQuuny-vdwdmv2G64VN6PmJDelOWiYtnQ1PNdvSzlYtnVbDEXsqs6WpY5Fd1uWQlWZ5p3UvtYC6HUyCMkCPzGQjLVRL3yks6LvFgwOtsteVHRqtzViy6XrCLzXOKfip5FHvEEM9ckSqiXR6NWPvirkeNV2RuZpIv42GSDdc0jD8FJieykQWFPWeLQpBp-AE_Oi7Q">