File tree Expand file tree Collapse file tree 2 files changed +13
-22
lines changed
tests/std/tests/VSO_0157762_feature_test_macros Expand file tree Collapse file tree 2 files changed +13
-22
lines changed Original file line number Diff line number Diff line change 1366
1366
#define __cpp_lib_byteswap 202110L
1367
1367
#define __cpp_lib_invoke_r 202106L
1368
1368
#define __cpp_lib_is_scoped_enum 202011L
1369
-
1370
- #ifdef __cpp_lib_concepts
1371
- #define __cpp_lib_monadic_optional 202110L
1372
- #endif // __cpp_lib_concepts
1373
-
1374
- #define __cpp_lib_move_only_function 202110L
1369
+ #define __cpp_lib_move_only_function 202110L
1375
1370
1376
1371
#ifdef __cpp_lib_concepts
1377
1372
#define __cpp_lib_out_ptr 202106L
1409
1404
#endif // language mode
1410
1405
#endif // _M_CEE
1411
1406
1412
- #if _HAS_CXX20
1407
+ #if _HAS_CXX23 && defined(__cpp_lib_concepts)
1408
+ #define __cpp_lib_optional 202110L // P0798R8 Monadic Operations For optional
1409
+ #elif _HAS_CXX20 // ^^^ _HAS_CXX23 / _HAS_CXX20 vvv
1413
1410
#define __cpp_lib_optional 202106L // P2231R1 Completing constexpr In optional And variant
1414
1411
#elif _HAS_CXX17 // ^^^ _HAS_CXX20 / _HAS_CXX17 vvv
1415
1412
#define __cpp_lib_optional 201606L // P0307R2 Making Optional Greater Equal Again
Original file line number Diff line number Diff line change @@ -1192,20 +1192,6 @@ STATIC_ASSERT(__cpp_lib_memory_resource == 201603L);
1192
1192
#endif
1193
1193
#endif
1194
1194
1195
- #if _HAS_CXX23 && !defined(__EDG__) // TRANSITION, EDG concepts support
1196
- #ifndef __cpp_lib_monadic_optional
1197
- #error __cpp_lib_monadic_optional is not defined
1198
- #elif __cpp_lib_monadic_optional != 202110L
1199
- #error __cpp_lib_monadic_optional is not 202110L
1200
- #else
1201
- STATIC_ASSERT (__cpp_lib_monadic_optional == 202110L );
1202
- #endif
1203
- #else
1204
- #ifdef __cpp_lib_monadic_optional
1205
- #error __cpp_lib_monadic_optional is defined
1206
- #endif
1207
- #endif
1208
-
1209
1195
#if _HAS_CXX23
1210
1196
#ifndef __cpp_lib_move_only_function
1211
1197
#error __cpp_lib_move_only_function is not defined
@@ -1264,7 +1250,15 @@ STATIC_ASSERT(__cpp_lib_not_fn == 201603L);
1264
1250
STATIC_ASSERT (__cpp_lib_null_iterators == 201304L );
1265
1251
#endif
1266
1252
1267
- #if _HAS_CXX20
1253
+ #if _HAS_CXX23 && !defined(__EDG__) // TRANSITION, EDG concepts support
1254
+ #ifndef __cpp_lib_optional
1255
+ #error __cpp_lib_optional is not defined
1256
+ #elif __cpp_lib_optional != 202110L
1257
+ #error __cpp_lib_optional is not 202110L
1258
+ #else
1259
+ STATIC_ASSERT (__cpp_lib_optional == 202110L );
1260
+ #endif
1261
+ #elif _HAS_CXX20
1268
1262
#ifndef __cpp_lib_optional
1269
1263
#error __cpp_lib_optional is not defined
1270
1264
#elif __cpp_lib_optional != 202106L
You can’t perform that action at this time.
0 commit comments