diff options
-rw-r--r-- | libcxx/include/span | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libcxx/include/span b/libcxx/include/span index b8dbc7e01fd6..f33569031730 100644 --- a/libcxx/include/span +++ b/libcxx/include/span @@ -622,7 +622,13 @@ template<class _Tp, size_t _Sz> template<class _Tp, size_t _Sz> span(const array<_Tp, _Sz>&) -> span<const _Tp, _Sz>; -#if !defined(_LIBCPP_HAS_NO_CONCEPTS) && !defined(_LIBCPP_HAS_NO_INCOMPLETE_RANGES) +#if defined(_LIBCPP_HAS_NO_CONCEPTS) || defined(_LIBCPP_HAS_NO_INCOMPLETE_RANGES) +template<class _Container> + span(_Container&) -> span<typename _Container::value_type>; + +template<class _Container> + span(const _Container&) -> span<const typename _Container::value_type>; +#else template<ranges::contiguous_range _Range> span(_Range&&) -> span<remove_reference_t<ranges::range_reference_t<_Range>>>; #endif |