| #include <array>
|
| #include <concepts>
|
| #include <ranges>
|
|
|
| template <std::ranges::range T>
|
| std::ranges::iterator_t<T>
|
| iterate (T &&input)
|
| {
|
| return std::ranges::begin (input.begin);
|
| }
|
|
|
| template <typename T> struct Foo;
|
|
|
| int
|
| main ()
|
| {
|
| constexpr std::array<char, 1> arr{'A'};
|
| auto foo = Foo<decltype (iterate (arr))> ();
|
| return 0;
|
| }
|