@@ -154,6 +154,8 @@ C Language Changes
154154- Added ``-Wimplicit-void-ptr-cast ``, grouped under ``-Wc++-compat ``, which
155155 diagnoses implicit conversion from ``void * `` to another pointer type as
156156 being incompatible with C++. (#GH17792)
157+ - Added ``-Wc++-keyword ``, grouped under ``-Wc++-compat ``, which diagnoses when
158+ a C++ keyword is used as an identifier in C. (#GH21898)
157159- Added ``-Wc++-hidden-decl ``, grouped under ``-Wc++-compat ``, which diagnoses
158160 use of tag types which are visible in C but not visible in C++ due to scoping
159161 rules. e.g.,
@@ -201,6 +203,10 @@ C Language Changes
201203 ``-Wunterminated-string-initialization ``. However, this diagnostic is not
202204 silenced by the ``nonstring `` attribute as these initializations are always
203205 incompatible with C++.
206+ - Added ``-Wjump-bypasses-init ``, which is off by default and grouped under
207+ ``-Wc++-compat ``. It diagnoses when a jump (``goto `` to its label, ``switch ``
208+ to its ``case ``) will bypass the initialization of a local variable, which is
209+ invalid in C++.
204210- Added the existing ``-Wduplicate-decl-specifier `` diagnostic, which is on by
205211 default, to ``-Wc++-compat `` because duplicated declaration specifiers are
206212 not valid in C++.
@@ -281,7 +287,7 @@ New Compiler Flags
281287 The feature has `existed <https://clang.llvm.org/docs/SourceBasedCodeCoverage.html#running-the-instrumented-program >`_)
282288 for a while and this is just a user facing option.
283289
284- - New option ``-ftime-report-json `` added which outputs the same timing data as `-ftime-report ` but formatted as JSON.
290+ - New option ``-ftime-report-json `` added which outputs the same timing data as `` -ftime-report ` ` but formatted as JSON.
285291
286292Deprecated Compiler Flags
287293-------------------------
@@ -482,6 +488,8 @@ Improvements to Clang's diagnostics
482488- ``-Winitializer-overrides `` and ``-Wreorder-init-list `` are now grouped under
483489 the ``-Wc99-designator `` diagnostic group, as they also are about the
484490 behavior of the C99 feature as it was introduced into C++20. Fixes #GH47037
491+ - ``-Wreserved-identifier `` now fires on reserved parameter names in a function
492+ declaration which is not a definition.
485493
486494Improvements to Clang's time-trace
487495----------------------------------
@@ -621,6 +629,8 @@ Bug Fixes to C++ Support
621629- Clang now issues an error when placement new is used to modify a const-qualified variable
622630 in a ``constexpr `` function. (#GH131432)
623631- Clang now emits a warning when class template argument deduction for alias templates is used in C++17. (#GH133806)
632+ - Fix a crash when checking the template template parameters of a dependent lambda appearing in an alias declaration.
633+ (#GH136432), (#GH137014), (#GH138018)
624634
625635Bug Fixes to AST Handling
626636^^^^^^^^^^^^^^^^^^^^^^^^^
0 commit comments