@@ -1370,6 +1370,41 @@ For example, compiling code with ``-fmodules`` enables the use of Modules.
1370
1370
1371
1371
More information could be found `here <https://clang.llvm.org/docs/Modules.html >`_.
1372
1372
1373
+ Language Extensions Back-ported to Previous Standards
1374
+ =====================================================
1375
+
1376
+ =================================== ================================ ============= ============= ==================================
1377
+ Feature Feature Test Macro Introduced In Backported To Required Flags
1378
+ =================================== ================================ ============= ============= ==================================
1379
+ variadic templates __cpp_variadic_templates C++11 C++03
1380
+ Alias templates __cpp_alias_templates C++11 C++03
1381
+ Non-static data member initializers __cpp_nsdmi C++11 C++03
1382
+ Range-based ``for `` loop __cpp_range_based_for C++11 C++03
1383
+ RValue references __cpp_rvalue_references C++11 C++03
1384
+ Attributes __cpp_attributes C++11 C++03 -fdouble-square-bracket-attributes
1385
+ variable templates __cpp_variable_templates C++14 C++03
1386
+ Binary literals __cpp_binary_literals C++14 C++03
1387
+ Relaxed constexpr __cpp_constexpr C++14 C++11
1388
+ ``if constexpr `` __cpp_if_constexpr C++17 C++11
1389
+ fold expressions __cpp_fold_expressions C++17 C++03
1390
+ Lambda capture of \* this by value __cpp_capture_star_this C++17 C++11
1391
+ Attributes on enums __cpp_enumerator_attributes C++17 C++11
1392
+ Guaranteed copy elision __cpp_guaranteed_copy_elision C++17 C++03
1393
+ Hexadecimal floating literals __cpp_hex_float C++17 C++03
1394
+ ``inline `` variables __cpp_inline_variables C++17 C++03
1395
+ Attributes on namespaces __cpp_namespace_attributes C++17 C++11
1396
+ Structured bindings __cpp_structured_bindings C++17 C++03
1397
+ template template arguments __cpp_template_template_args C++17 C++03
1398
+ ``static operator[] `` __cpp_multidimensional_subscript C++20 C++03
1399
+ Designated initializers __cpp_designated_initializers C++20 C++03
1400
+ Conditional ``explicit `` __cpp_conditional_explicit C++20 C++03
1401
+ ``using enum `` __cpp_using_enum C++20 C++03
1402
+ ``if consteval `` __cpp_if_consteval C++23 C++20
1403
+ ``static operator() `` __cpp_static_call_operator C++23 C++03
1404
+ ----------------------------------- -------------------------------- ------------- ------------- ----------------------------------
1405
+ Designated initializers C99 C89
1406
+ =================================== ================================ ============= ============= ==================================
1407
+
1373
1408
Type Trait Primitives
1374
1409
=====================
1375
1410
0 commit comments