@@ -419,7 +419,7 @@ public:
419
419
}
420
420
421
421
_LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view () const noexcept ;
422
- #endif
422
+ #endif // _LIBCPP_STD_VER >= 20
423
423
424
424
void str (const string_type& __s) {
425
425
__str_ = __s;
@@ -904,20 +904,22 @@ public:
904
904
return const_cast <basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);
905
905
}
906
906
907
- #if _LIBCPP_STD_VER >= 20
908
- _LIBCPP_HIDE_FROM_ABI string_type str () const & { return __sb_.str (); }
907
+ #if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
908
+ _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
909
+ #else
910
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () const & { return __sb_.str (); }
911
+
912
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () && { return std::move (__sb_).str (); }
913
+ #endif
909
914
915
+ #if _LIBCPP_STD_VER >= 20
910
916
template <class _SAlloc >
911
917
requires __is_allocator<_SAlloc>::value
912
918
_LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str (const _SAlloc& __sa) const {
913
919
return __sb_.str (__sa);
914
920
}
915
921
916
- _LIBCPP_HIDE_FROM_ABI string_type str () && { return std::move (__sb_).str (); }
917
-
918
922
_LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view () const noexcept { return __sb_.view (); }
919
- #else // _LIBCPP_STD_VER >= 20
920
- _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
921
923
#endif // _LIBCPP_STD_VER >= 20
922
924
923
925
_LIBCPP_HIDE_FROM_ABI void str (const string_type& __s) { __sb_.str (__s); }
@@ -1027,20 +1029,22 @@ public:
1027
1029
return const_cast <basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);
1028
1030
}
1029
1031
1030
- #if _LIBCPP_STD_VER >= 20
1031
- _LIBCPP_HIDE_FROM_ABI string_type str () const & { return __sb_.str (); }
1032
+ #if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
1033
+ _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
1034
+ #else
1035
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () const & { return __sb_.str (); }
1032
1036
1037
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () && { return std::move (__sb_).str (); }
1038
+ #endif
1039
+
1040
+ #if _LIBCPP_STD_VER >= 20
1033
1041
template <class _SAlloc >
1034
1042
requires __is_allocator<_SAlloc>::value
1035
1043
_LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str (const _SAlloc& __sa) const {
1036
1044
return __sb_.str (__sa);
1037
1045
}
1038
1046
1039
- _LIBCPP_HIDE_FROM_ABI string_type str () && { return std::move (__sb_).str (); }
1040
-
1041
1047
_LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view () const noexcept { return __sb_.view (); }
1042
- #else // _LIBCPP_STD_VER >= 20
1043
- _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
1044
1048
#endif // _LIBCPP_STD_VER >= 20
1045
1049
1046
1050
_LIBCPP_HIDE_FROM_ABI void str (const string_type& __s) { __sb_.str (__s); }
@@ -1149,20 +1153,22 @@ public:
1149
1153
return const_cast <basic_stringbuf<char_type, traits_type, allocator_type>*>(&__sb_);
1150
1154
}
1151
1155
1152
- #if _LIBCPP_STD_VER >= 20
1153
- _LIBCPP_HIDE_FROM_ABI string_type str () const & { return __sb_.str (); }
1156
+ #if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
1157
+ _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
1158
+ #else
1159
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () const & { return __sb_.str (); }
1160
+
1161
+ _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str () && { return std::move (__sb_).str (); }
1162
+ #endif
1154
1163
1164
+ #if _LIBCPP_STD_VER >= 20
1155
1165
template <class _SAlloc >
1156
1166
requires __is_allocator<_SAlloc>::value
1157
1167
_LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str (const _SAlloc& __sa) const {
1158
1168
return __sb_.str (__sa);
1159
1169
}
1160
1170
1161
- _LIBCPP_HIDE_FROM_ABI string_type str () && { return std::move (__sb_).str (); }
1162
-
1163
1171
_LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view () const noexcept { return __sb_.view (); }
1164
- #else // _LIBCPP_STD_VER >= 20
1165
- _LIBCPP_HIDE_FROM_ABI string_type str () const { return __sb_.str (); }
1166
1172
#endif // _LIBCPP_STD_VER >= 20
1167
1173
1168
1174
_LIBCPP_HIDE_FROM_ABI void str (const string_type& __s) { __sb_.str (__s); }
0 commit comments