Skip to content

Commit b09fad7

Browse files
committed
[clang] Document extensions from later standards
Reviewed By: aaron.ballman Spies: H-G-Hristov, cfe-commits Differential Revision: https://reviews.llvm.org/D150321
1 parent 7781175 commit b09fad7

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

clang/docs/LanguageExtensions.rst

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1370,6 +1370,41 @@ For example, compiling code with ``-fmodules`` enables the use of Modules.
13701370

13711371
More information could be found `here <https://clang.llvm.org/docs/Modules.html>`_.
13721372

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+
13731408
Type Trait Primitives
13741409
=====================
13751410

0 commit comments

Comments
 (0)