2020-05-23 Jonathan Wakely <jwakely@redhat.com>
+ * include/bits/fs_path.h (__detail::_S_range_begin)
+ (__detail::_S_range_end): Remove unintentional static specifiers.
+ * include/experimental/bits/fs_path.h (__detail::_S_range_begin)
+ (__detail::_S_range_end): Likewise.
+
* include/bits/fs_path.h (filesystem::__detail::__is_encoded_char):
Replace alias template with variable template. Don't remove const.
(filesystem::__detail::__is_path_src): Replace overloaded function
using _Path2 = enable_if_t<__is_path_iter_src<_Tr>::value, path>;
template<typename _Source>
- static _Source
+ _Source
_S_range_begin(_Source __begin) { return __begin; }
struct __null_terminated { };
template<typename _Source>
- static __null_terminated
+ __null_terminated
_S_range_end(_Source) { return {}; }
template<typename _CharT, typename _Traits, typename _Alloc>
- static const _CharT*
+ inline const _CharT*
_S_range_begin(const basic_string<_CharT, _Traits, _Alloc>& __str)
{ return __str.data(); }
template<typename _CharT, typename _Traits, typename _Alloc>
- static const _CharT*
+ inline const _CharT*
_S_range_end(const basic_string<_CharT, _Traits, _Alloc>& __str)
{ return __str.data() + __str.size(); }
template<typename _CharT, typename _Traits>
- static const _CharT*
+ inline const _CharT*
_S_range_begin(const basic_string_view<_CharT, _Traits>& __str)
{ return __str.data(); }
template<typename _CharT, typename _Traits>
- static const _CharT*
+ inline const _CharT*
_S_range_end(const basic_string_view<_CharT, _Traits>& __str)
{ return __str.data() + __str.size(); }
path>::type;
template<typename _Source>
- static _Source
+ inline _Source
_S_range_begin(_Source __begin) { return __begin; }
struct __null_terminated { };
template<typename _Source>
- static __null_terminated
+ inline __null_terminated
_S_range_end(_Source) { return {}; }
template<typename _CharT, typename _Traits, typename _Alloc>
- static const _CharT*
+ inline const _CharT*
_S_range_begin(const basic_string<_CharT, _Traits, _Alloc>& __str)
{ return __str.data(); }
template<typename _CharT, typename _Traits, typename _Alloc>
- static const _CharT*
+ inline const _CharT*
_S_range_end(const basic_string<_CharT, _Traits, _Alloc>& __str)
{ return __str.data() + __str.size(); }
#if __cplusplus >= 201402L
template<typename _CharT, typename _Traits>
- static const _CharT*
+ inline const _CharT*
_S_range_begin(const basic_string_view<_CharT, _Traits>& __str)
{ return __str.data(); }
template<typename _CharT, typename _Traits>
- static const _CharT*
+ inline const _CharT*
_S_range_end(const basic_string_view<_CharT, _Traits>& __str)
{ return __str.data() + __str.size(); }
#endif