@@ -1127,11 +1127,15 @@ public:
1127
1127
_CONSTEXPR20_DYNALLOC _Container_base12& operator=(const _Container_base12&) = delete;
1128
1128
1129
1129
_CONSTEXPR20_DYNALLOC void _Orphan_all() noexcept;
1130
+ #ifdef __cpp_lib_is_constant_evaluated
1130
1131
_CONSTEXPR20_DYNALLOC void _Orphan_all_unlocked() noexcept;
1132
+ #endif // __cpp_lib_is_constant_evaluated
1131
1133
inline void _Orphan_all_locked() noexcept;
1132
1134
1133
1135
_CONSTEXPR20_DYNALLOC void _Swap_proxy_and_iterators(_Container_base12&) noexcept;
1136
+ #ifdef __cpp_lib_is_constant_evaluated
1134
1137
_CONSTEXPR20_DYNALLOC void _Swap_proxy_and_iterators_unlocked(_Container_base12&) noexcept;
1138
+ #endif // __cpp_lib_is_constant_evaluated
1135
1139
inline void _Swap_proxy_and_iterators_locked(_Container_base12&) noexcept;
1136
1140
1137
1141
template <class _Alloc>
@@ -1186,6 +1190,7 @@ struct _Iterator_base12 { // store links to container proxy, next iterator
1186
1190
}
1187
1191
1188
1192
#if _ITERATOR_DEBUG_LEVEL == 2
1193
+ #ifdef __cpp_lib_is_constant_evaluated
1189
1194
_CONSTEXPR20_DYNALLOC void _Adopt_unlocked(const _Container_base12* _Parent) noexcept {
1190
1195
_Container_proxy* _Parent_proxy = _Parent->_Myproxy;
1191
1196
@@ -1196,6 +1201,7 @@ struct _Iterator_base12 { // store links to container proxy, next iterator
1196
1201
_Myproxy = _Parent_proxy;
1197
1202
}
1198
1203
}
1204
+ #endif // __cpp_lib_is_constant_evaluated
1199
1205
1200
1206
inline void _Adopt_locked(const _Container_base12* _Parent) noexcept {
1201
1207
_Container_proxy* _Parent_proxy = _Parent->_Myproxy;
@@ -1242,6 +1248,7 @@ struct _Iterator_base12 { // store links to container proxy, next iterator
1242
1248
}
1243
1249
1244
1250
#if _ITERATOR_DEBUG_LEVEL == 2
1251
+ #ifdef __cpp_lib_is_constant_evaluated
1245
1252
_CONSTEXPR20_DYNALLOC void _Orphan_me_unlocked() noexcept {
1246
1253
if (_Myproxy) { // adopted, remove self from list
1247
1254
_Iterator_base12** _Pnext = &_Myproxy->_Myfirstiter;
@@ -1254,6 +1261,7 @@ struct _Iterator_base12 { // store links to container proxy, next iterator
1254
1261
_Myproxy = nullptr;
1255
1262
}
1256
1263
}
1264
+ #endif // __cpp_lib_is_constant_evaluated
1257
1265
1258
1266
inline void _Orphan_me_locked() noexcept {
1259
1267
_Lockit _Lock(_LOCK_DEBUG);
@@ -1288,13 +1296,15 @@ struct _Iterator_base12 { // store links to container proxy, next iterator
1288
1296
};
1289
1297
1290
1298
// MEMBER FUNCTIONS FOR _Container_base12
1299
+ #ifdef __cpp_lib_is_constant_evaluated
1291
1300
_CONSTEXPR20_DYNALLOC void _Container_base12::_Orphan_all_unlocked() noexcept {
1292
1301
for (auto _Pnext = &_Myproxy->_Myfirstiter; *_Pnext; *_Pnext = (*_Pnext)->_Mynextiter) {
1293
1302
(*_Pnext)->_Myproxy = nullptr;
1294
1303
}
1295
1304
1296
1305
_Myproxy->_Myfirstiter = nullptr;
1297
1306
}
1307
+ #endif // __cpp_lib_is_constant_evaluated
1298
1308
1299
1309
inline void _Container_base12::_Orphan_all_locked() noexcept {
1300
1310
_Lockit _Lock(_LOCK_DEBUG);
@@ -1318,6 +1328,7 @@ _CONSTEXPR20_DYNALLOC void _Container_base12::_Orphan_all() noexcept {
1318
1328
}
1319
1329
}
1320
1330
1331
+ #ifdef __cpp_lib_is_constant_evaluated
1321
1332
_CONSTEXPR20_DYNALLOC void _Container_base12::_Swap_proxy_and_iterators_unlocked(_Container_base12& _Right) noexcept {
1322
1333
_Container_proxy* _Temp = _Myproxy;
1323
1334
_Myproxy = _Right._Myproxy;
@@ -1331,6 +1342,7 @@ _CONSTEXPR20_DYNALLOC void _Container_base12::_Swap_proxy_and_iterators_unlocked
1331
1342
_Right._Myproxy->_Mycont = &_Right;
1332
1343
}
1333
1344
}
1345
+ #endif // __cpp_lib_is_constant_evaluated
1334
1346
1335
1347
inline void _Container_base12::_Swap_proxy_and_iterators_locked(_Container_base12& _Right) noexcept {
1336
1348
_Lockit _Lock(_LOCK_DEBUG);
0 commit comments