@@ -1016,15 +1016,15 @@ struct _Alloc_construct_ptr { // pointer used to help construct 1 _Alloc::value_
1016
1016
struct _Fake_allocator {};
1017
1017
1018
1018
struct _Container_base0 {
1019
- _CONSTEXPR20 void _Orphan_all() noexcept {}
1020
- _CONSTEXPR20 void _Swap_proxy_and_iterators(_Container_base0&) noexcept {}
1021
- _CONSTEXPR20 void _Alloc_proxy(const _Fake_allocator&) noexcept {}
1022
- _CONSTEXPR20 void _Reload_proxy(const _Fake_allocator&, const _Fake_allocator&) noexcept {}
1019
+ _CONSTEXPR20_CONTAINER void _Orphan_all() noexcept {}
1020
+ _CONSTEXPR20_CONTAINER void _Swap_proxy_and_iterators(_Container_base0&) noexcept {}
1021
+ _CONSTEXPR20_CONTAINER void _Alloc_proxy(const _Fake_allocator&) noexcept {}
1022
+ _CONSTEXPR20_CONTAINER void _Reload_proxy(const _Fake_allocator&, const _Fake_allocator&) noexcept {}
1023
1023
};
1024
1024
1025
1025
struct _Iterator_base0 {
1026
- _CONSTEXPR20 void _Adopt(const void*) noexcept {}
1027
- _CONSTEXPR20 const _Container_base0* _Getcont() const noexcept {
1026
+ _CONSTEXPR20_CONTAINER void _Adopt(const void*) noexcept {}
1027
+ _CONSTEXPR20_CONTAINER const _Container_base0* _Getcont() const noexcept {
1028
1028
return nullptr;
1029
1029
}
1030
1030
@@ -1034,33 +1034,33 @@ struct _Iterator_base0 {
1034
1034
// CLASS _Container_proxy
1035
1035
struct _Container_base12;
1036
1036
struct _Container_proxy { // store head of iterator chain and back pointer
1037
- _CONSTEXPR20 _Container_proxy() noexcept = default;
1038
- _CONSTEXPR20 _Container_proxy(_Container_base12* _Mycont_) noexcept : _Mycont(_Mycont_) {}
1037
+ _CONSTEXPR20_CONTAINER _Container_proxy() noexcept = default;
1038
+ _CONSTEXPR20_CONTAINER _Container_proxy(_Container_base12* _Mycont_) noexcept : _Mycont(_Mycont_) {}
1039
1039
1040
1040
const _Container_base12* _Mycont = nullptr;
1041
1041
mutable _Iterator_base12* _Myfirstiter = nullptr;
1042
1042
};
1043
1043
1044
1044
struct _Container_base12 {
1045
1045
public:
1046
- _CONSTEXPR20_DYNALLOC _Container_base12() noexcept = default;
1046
+ _CONSTEXPR20_CONTAINER _Container_base12() noexcept = default;
1047
1047
1048
1048
_Container_base12(const _Container_base12&) = delete;
1049
1049
_Container_base12& operator=(const _Container_base12&) = delete;
1050
1050
1051
- _CONSTEXPR20_DYNALLOC void _Orphan_all() noexcept;
1052
- _CONSTEXPR20_DYNALLOC void _Swap_proxy_and_iterators(_Container_base12&) noexcept;
1051
+ _CONSTEXPR20_CONTAINER void _Orphan_all() noexcept;
1052
+ _CONSTEXPR20_CONTAINER void _Swap_proxy_and_iterators(_Container_base12&) noexcept;
1053
1053
1054
1054
template <class _Alloc>
1055
- _CONSTEXPR20_DYNALLOC void _Alloc_proxy(_Alloc&& _Al) {
1055
+ _CONSTEXPR20_CONTAINER void _Alloc_proxy(_Alloc&& _Al) {
1056
1056
_Container_proxy* const _New_proxy = _Unfancy(_Al.allocate(1));
1057
1057
_Construct_in_place(*_New_proxy, this);
1058
1058
_Myproxy = _New_proxy;
1059
1059
_New_proxy->_Mycont = this;
1060
1060
}
1061
1061
1062
1062
template <class _Alloc>
1063
- _CONSTEXPR20_DYNALLOC void _Reload_proxy(_Alloc&& _Old_alloc, _Alloc&& _New_alloc) {
1063
+ _CONSTEXPR20_CONTAINER void _Reload_proxy(_Alloc&& _Old_alloc, _Alloc&& _New_alloc) {
1064
1064
// pre: no iterators refer to the existing proxy
1065
1065
_Container_proxy* const _New_proxy = _Unfancy(_New_alloc.allocate(1));
1066
1066
_Construct_in_place(*_New_proxy, this);
@@ -1071,21 +1071,21 @@ public:
1071
1071
_Container_proxy* _Myproxy = nullptr;
1072
1072
1073
1073
private:
1074
- _CONSTEXPR20_DYNALLOC void _Orphan_all_unlocked() noexcept;
1074
+ _CONSTEXPR20_CONTAINER void _Orphan_all_unlocked() noexcept;
1075
1075
inline void _Orphan_all_locked() noexcept;
1076
- _CONSTEXPR20_DYNALLOC void _Swap_proxy_and_iterators_unlocked(_Container_base12&) noexcept;
1076
+ _CONSTEXPR20_CONTAINER void _Swap_proxy_and_iterators_unlocked(_Container_base12&) noexcept;
1077
1077
inline void _Swap_proxy_and_iterators_locked(_Container_base12&) noexcept;
1078
1078
};
1079
1079
1080
1080
struct _Iterator_base12 { // store links to container proxy, next iterator
1081
1081
public:
1082
- _CONSTEXPR20_DYNALLOC _Iterator_base12() noexcept = default; // construct orphaned iterator
1082
+ _CONSTEXPR20_CONTAINER _Iterator_base12() noexcept = default; // construct orphaned iterator
1083
1083
1084
- _CONSTEXPR20_DYNALLOC _Iterator_base12(const _Iterator_base12& _Right) noexcept {
1084
+ _CONSTEXPR20_CONTAINER _Iterator_base12(const _Iterator_base12& _Right) noexcept {
1085
1085
*this = _Right;
1086
1086
}
1087
1087
1088
- _CONSTEXPR20_DYNALLOC _Iterator_base12& operator=(const _Iterator_base12& _Right) noexcept {
1088
+ _CONSTEXPR20_CONTAINER _Iterator_base12& operator=(const _Iterator_base12& _Right) noexcept {
1089
1089
if (_Myproxy != _Right._Myproxy) {
1090
1090
if (_Right._Myproxy) {
1091
1091
_Adopt(_Right._Myproxy->_Mycont);
@@ -1101,11 +1101,11 @@ public:
1101
1101
}
1102
1102
1103
1103
#if _ITERATOR_DEBUG_LEVEL == 2
1104
- _CONSTEXPR20_DYNALLOC ~_Iterator_base12() noexcept {
1104
+ _CONSTEXPR20_CONTAINER ~_Iterator_base12() noexcept {
1105
1105
_Orphan_me();
1106
1106
}
1107
1107
1108
- _CONSTEXPR20_DYNALLOC void _Adopt(const _Container_base12* _Parent) noexcept {
1108
+ _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept {
1109
1109
if (_Parent) { // have a parent, do adoption
1110
1110
_Container_proxy* _Parent_proxy = _Parent->_Myproxy;
1111
1111
if (_Myproxy != _Parent_proxy) { // change parentage
@@ -1123,7 +1123,7 @@ public:
1123
1123
}
1124
1124
}
1125
1125
1126
- _CONSTEXPR20_DYNALLOC void _Orphan_me() noexcept {
1126
+ _CONSTEXPR20_CONTAINER void _Orphan_me() noexcept {
1127
1127
if (_Myproxy) { // adopted, remove self from list
1128
1128
#ifdef __cpp_lib_is_constant_evaluated
1129
1129
if (_STD is_constant_evaluated()) {
@@ -1137,7 +1137,7 @@ public:
1137
1137
}
1138
1138
1139
1139
#else // ^^^ _ITERATOR_DEBUG_LEVEL == 2 ^^^ / vvv _ITERATOR_DEBUG_LEVEL != 2 vvv
1140
- _CONSTEXPR20_DYNALLOC void _Adopt(const _Container_base12* _Parent) noexcept {
1140
+ _CONSTEXPR20_CONTAINER void _Adopt(const _Container_base12* _Parent) noexcept {
1141
1141
if (_Parent) { // have a parent, do adoption
1142
1142
_Myproxy = _Parent->_Myproxy;
1143
1143
} else { // no future parent, just disown current parent
@@ -1146,7 +1146,7 @@ public:
1146
1146
}
1147
1147
#endif // _ITERATOR_DEBUG_LEVEL != 2
1148
1148
1149
- _CONSTEXPR20_DYNALLOC const _Container_base12* _Getcont() const noexcept {
1149
+ _CONSTEXPR20_CONTAINER const _Container_base12* _Getcont() const noexcept {
1150
1150
return _Myproxy ? _Myproxy->_Mycont : nullptr;
1151
1151
}
1152
1152
@@ -1157,7 +1157,7 @@ public:
1157
1157
1158
1158
#if _ITERATOR_DEBUG_LEVEL == 2
1159
1159
private:
1160
- _CONSTEXPR20_DYNALLOC void _Adopt_unlocked(_Container_proxy* _Parent_proxy) noexcept {
1160
+ _CONSTEXPR20_CONTAINER void _Adopt_unlocked(_Container_proxy* _Parent_proxy) noexcept {
1161
1161
if (_Myproxy) { // adopted, remove self from list
1162
1162
_Orphan_me_unlocked();
1163
1163
}
@@ -1171,7 +1171,7 @@ private:
1171
1171
_Adopt_unlocked(_Parent_proxy);
1172
1172
}
1173
1173
1174
- _CONSTEXPR20_DYNALLOC void _Orphan_me_unlocked() noexcept {
1174
+ _CONSTEXPR20_CONTAINER void _Orphan_me_unlocked() noexcept {
1175
1175
_Iterator_base12** _Pnext = &_Myproxy->_Myfirstiter;
1176
1176
while (*_Pnext && *_Pnext != this) {
1177
1177
_Pnext = &(*_Pnext)->_Mynextiter;
@@ -1190,7 +1190,7 @@ private:
1190
1190
};
1191
1191
1192
1192
// MEMBER FUNCTIONS FOR _Container_base12
1193
- _CONSTEXPR20_DYNALLOC void _Container_base12::_Orphan_all_unlocked() noexcept {
1193
+ _CONSTEXPR20_CONTAINER void _Container_base12::_Orphan_all_unlocked() noexcept {
1194
1194
for (auto _Pnext = &_Myproxy->_Myfirstiter; *_Pnext; *_Pnext = (*_Pnext)->_Mynextiter) {
1195
1195
(*_Pnext)->_Myproxy = nullptr;
1196
1196
}
@@ -1202,7 +1202,7 @@ inline void _Container_base12::_Orphan_all_locked() noexcept {
1202
1202
_Orphan_all_unlocked();
1203
1203
}
1204
1204
1205
- _CONSTEXPR20_DYNALLOC void _Container_base12::_Orphan_all() noexcept {
1205
+ _CONSTEXPR20_CONTAINER void _Container_base12::_Orphan_all() noexcept {
1206
1206
#if _ITERATOR_DEBUG_LEVEL == 2
1207
1207
if (_Myproxy) { // proxy allocated, drain it
1208
1208
#ifdef __cpp_lib_is_constant_evaluated
@@ -1217,7 +1217,7 @@ _CONSTEXPR20_DYNALLOC void _Container_base12::_Orphan_all() noexcept {
1217
1217
#endif // _ITERATOR_DEBUG_LEVEL == 2
1218
1218
}
1219
1219
1220
- _CONSTEXPR20_DYNALLOC void _Container_base12::_Swap_proxy_and_iterators_unlocked(_Container_base12& _Right) noexcept {
1220
+ _CONSTEXPR20_CONTAINER void _Container_base12::_Swap_proxy_and_iterators_unlocked(_Container_base12& _Right) noexcept {
1221
1221
_Container_proxy* _Temp = _Myproxy;
1222
1222
_Myproxy = _Right._Myproxy;
1223
1223
_Right._Myproxy = _Temp;
@@ -1236,7 +1236,7 @@ inline void _Container_base12::_Swap_proxy_and_iterators_locked(_Container_base1
1236
1236
_Swap_proxy_and_iterators_unlocked(_Right);
1237
1237
}
1238
1238
1239
- _CONSTEXPR20_DYNALLOC void _Container_base12::_Swap_proxy_and_iterators(_Container_base12& _Right) noexcept {
1239
+ _CONSTEXPR20_CONTAINER void _Container_base12::_Swap_proxy_and_iterators(_Container_base12& _Right) noexcept {
1240
1240
#if _ITERATOR_DEBUG_LEVEL != 2
1241
1241
_Swap_proxy_and_iterators_unlocked(_Right);
1242
1242
#else // ^^^ _ITERATOR_DEBUG_LEVEL != 2 ^^^ / vvv _ITERATOR_DEBUG_LEVEL == 2 vvv
@@ -1267,11 +1267,11 @@ struct _Leave_proxy_unbound {
1267
1267
struct _Fake_proxy_ptr_impl { // fake replacement for a container proxy smart pointer when no container proxy is in use
1268
1268
_Fake_proxy_ptr_impl(const _Fake_proxy_ptr_impl&) = delete;
1269
1269
_Fake_proxy_ptr_impl& operator=(const _Fake_proxy_ptr_impl&) = delete;
1270
- _CONSTEXPR20_DYNALLOC _Fake_proxy_ptr_impl(const _Fake_allocator&, _Leave_proxy_unbound) noexcept {}
1271
- _CONSTEXPR20_DYNALLOC _Fake_proxy_ptr_impl(const _Fake_allocator&, const _Container_base0&) noexcept {}
1270
+ _CONSTEXPR20_CONTAINER _Fake_proxy_ptr_impl(const _Fake_allocator&, _Leave_proxy_unbound) noexcept {}
1271
+ _CONSTEXPR20_CONTAINER _Fake_proxy_ptr_impl(const _Fake_allocator&, const _Container_base0&) noexcept {}
1272
1272
1273
- _CONSTEXPR20_DYNALLOC void _Bind(const _Fake_allocator&, _Container_base0*) noexcept {}
1274
- _CONSTEXPR20_DYNALLOC void _Release() noexcept {}
1273
+ _CONSTEXPR20_CONTAINER void _Bind(const _Fake_allocator&, _Container_base0*) noexcept {}
1274
+ _CONSTEXPR20_CONTAINER void _Release() noexcept {}
1275
1275
};
1276
1276
1277
1277
struct _Basic_container_proxy_ptr12 {
@@ -1283,7 +1283,7 @@ struct _Basic_container_proxy_ptr12 {
1283
1283
}
1284
1284
1285
1285
protected:
1286
- _CONSTEXPR20_DYNALLOC _Basic_container_proxy_ptr12() = default;
1286
+ _CONSTEXPR20_CONTAINER _Basic_container_proxy_ptr12() = default;
1287
1287
_Basic_container_proxy_ptr12(const _Basic_container_proxy_ptr12&) = delete;
1288
1288
_Basic_container_proxy_ptr12(_Basic_container_proxy_ptr12&&) = delete;
1289
1289
};
@@ -1293,27 +1293,27 @@ struct _Container_proxy_ptr12 : _Basic_container_proxy_ptr12 {
1293
1293
// smart pointer components for a _Container_proxy * for an allocator family
1294
1294
_Alloc& _Al;
1295
1295
1296
- _CONSTEXPR20_DYNALLOC _Container_proxy_ptr12(_Alloc& _Al_, _Leave_proxy_unbound) : _Al(_Al_) {
1296
+ _CONSTEXPR20_CONTAINER _Container_proxy_ptr12(_Alloc& _Al_, _Leave_proxy_unbound) : _Al(_Al_) {
1297
1297
// create a new unbound _Container_proxy
1298
1298
_Ptr = _Unfancy(_Al_.allocate(1));
1299
1299
_Construct_in_place(*_Ptr);
1300
1300
}
1301
1301
1302
- _CONSTEXPR20_DYNALLOC _Container_proxy_ptr12(_Alloc& _Al_, _Container_base12& _Mycont) : _Al(_Al_) {
1302
+ _CONSTEXPR20_CONTAINER _Container_proxy_ptr12(_Alloc& _Al_, _Container_base12& _Mycont) : _Al(_Al_) {
1303
1303
// create a new _Container_proxy pointing at _Mycont
1304
1304
_Ptr = _Unfancy(_Al_.allocate(1));
1305
1305
_Construct_in_place(*_Ptr, _STD addressof(_Mycont));
1306
1306
_Mycont._Myproxy = _Ptr;
1307
1307
}
1308
1308
1309
- _CONSTEXPR20_DYNALLOC void _Bind(_Alloc& _Old_alloc, _Container_base12* _Mycont) noexcept {
1309
+ _CONSTEXPR20_CONTAINER void _Bind(_Alloc& _Old_alloc, _Container_base12* _Mycont) noexcept {
1310
1310
// Attach the proxy stored in *this to _Mycont, and destroy _Mycont's existing proxy
1311
1311
// with _Old_alloc. Requires that no iterators are alive referring to _Mycont.
1312
1312
_Ptr->_Mycont = _Mycont;
1313
1313
_Delete_plain_internal(_Old_alloc, _STD exchange(_Mycont->_Myproxy, _STD exchange(_Ptr, nullptr)));
1314
1314
}
1315
1315
1316
- _CONSTEXPR20_DYNALLOC ~_Container_proxy_ptr12() {
1316
+ _CONSTEXPR20_CONTAINER ~_Container_proxy_ptr12() {
1317
1317
if (_Ptr) {
1318
1318
_Delete_plain_internal(_Al, _Ptr);
1319
1319
}
0 commit comments