diff options
Diffstat (limited to 'clang/docs')
| -rw-r--r-- | clang/docs/LanguageExtensions.rst | 5 | ||||
| -rw-r--r-- | clang/docs/ReleaseNotes.rst | 16 | 
2 files changed, 18 insertions, 3 deletions
diff --git a/clang/docs/LanguageExtensions.rst b/clang/docs/LanguageExtensions.rst index 495f2ab..baa0bbb 100644 --- a/clang/docs/LanguageExtensions.rst +++ b/clang/docs/LanguageExtensions.rst @@ -385,7 +385,9 @@ Builtin Macros  ``__COUNTER__``    Defined to an integer value that starts at zero and is incremented each time -  the ``__COUNTER__`` macro is expanded. +  the ``__COUNTER__`` macro is expanded. This is a standard feature in C2y but +  is an extension in earlier language modes and in C++. This macro can only be +  expanded 2147483647 times at most.  ``__INCLUDE_LEVEL__``    Defined to an integral value that is the include depth of the file currently @@ -1821,6 +1823,7 @@ Octal literals prefixed with ``0o`` or ``0O``                                  C  ``_Countof`` (N3369, N3469)                                                    C2y           C89  ``_Generic`` with a type operand (N3260)                                       C2y           C89, C++  ``++``/``--`` on ``_Complex`` value (N3259)                                    C2y           C89, C++ +``__COUNTER__`` (N3457)                                                        C2y           C89, C++  ============================================= ================================ ============= =============  Builtin type aliases diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index 92fc938..2e2c519 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -196,6 +196,11 @@ C2y Feature Support    function or variable within an extern inline function is no longer a    constraint per `WG14 N3622 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3622.txt>`_.  - Clang now supports `N3355 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3355.htm>`_ Named Loops. +- Clang's implementation of ``__COUNTER__`` was updated to conform to +  `WG14 N3457 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3457.htm>`_. +  This includes adding pedantic warnings for the feature being an extension in +  other language modes as well as an error when the counter is expanded more +  than 2147483647 times.  C23 Feature Support  ^^^^^^^^^^^^^^^^^^^ @@ -350,7 +355,7 @@ Improvements to Clang's diagnostics    potential misaligned members get processed before they can get discarded.    (#GH144729) -- Clang now emits dignostic with correct message in case of assigning to const reference captured in lambda. (#GH105647) +- Clang now emits a diagnostic with the correct message in case of assigning to const reference captured in lambda. (#GH105647)  - Fixed false positive in ``-Wmissing-noreturn`` diagnostic when it was requiring the usage of    ``[[noreturn]]`` on lambdas before C++23 (#GH154493). @@ -390,6 +395,11 @@ Improvements to Clang's diagnostics    that were previously incorrectly accepted in case of other irrelevant    conditions are now consistently diagnosed, identical to C++ mode. +- Fix false-positive unused label diagnostic when a label is used in a named break +  or continue (#GH166013) +- Clang now emits a diagnostic in case `vector_size` or `ext_vector_type` +  attributes are used with a negative size (#GH165463). +  Improvements to Clang's time-trace  ---------------------------------- @@ -452,6 +462,7 @@ Bug Fixes to Attribute Support  - Fix a crash when the function name is empty in the `swift_name` attribute. (#GH157075)  - Fixes crashes or missing diagnostics with the `device_kernel` attribute. (#GH161905)  - Fix handling of parameter indexes when an attribute is applied to a C++23 explicit object member function. +- Fixed several false positives and false negatives in function effect (`nonblocking`) analysis. (#GH166078) (#GH166101) (#GH166110)  Bug Fixes to C++ Support  ^^^^^^^^^^^^^^^^^^^^^^^^ @@ -466,7 +477,7 @@ Bug Fixes to C++ Support    casts that are guaranteed to fail (#GH137518).  - Fix bug rejecting partial specialization of variable templates with auto NTTPs (#GH118190).  - Fix a crash if errors "member of anonymous [...] redeclares" and -  "intializing multiple members of union" coincide (#GH149985). +  "initializing multiple members of union" coincide (#GH149985).  - Fix a crash when using ``explicit(bool)`` in pre-C++11 language modes. (#GH152729)  - Fix the parsing of variadic member functions when the ellipis immediately follows a default argument.(#GH153445)  - Fixed a bug that caused ``this`` captured by value in a lambda with a dependent explicit object parameter to not be @@ -496,6 +507,7 @@ Bug Fixes to C++ Support    nontrivial member when another member has an initializer. (#GH81774)  - Fixed a template depth issue when parsing lambdas inside a type constraint. (#GH162092)  - Diagnose unresolved overload sets in non-dependent compound requirements. (#GH51246) (#GH97753) +- Fix a crash when extracting unavailable member type from alias in template deduction. (#GH165560)  Bug Fixes to AST Handling  ^^^^^^^^^^^^^^^^^^^^^^^^^  | 
