[PATCH] D133771: Add a "Potentially Breaking Changes" section to the Clang release notes
Aaron Ballman via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 15 04:30:57 PDT 2022
This revision was automatically updated to reflect the committed changes.
aaron.ballman marked an inline comment as done.
Closed by commit rGe076680bd59c: Add a "Potentially Breaking Changes" section to the Clang release notes (authored by aaron.ballman).
Changed prior to commit:
https://reviews.llvm.org/D133771?vs=459718&id=460365#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D133771/new/
https://reviews.llvm.org/D133771
Files:
clang/docs/ReleaseNotes.rst
Index: clang/docs/ReleaseNotes.rst
===================================================================
--- clang/docs/ReleaseNotes.rst
+++ clang/docs/ReleaseNotes.rst
@@ -36,6 +36,30 @@
the current one. To see the release notes for a specific release, please
see the `releases page <https://llvm.org/releases/>`_.
+Potentially Breaking Changes
+============================
+These changes are ones which we think may surprise users when upgrading to
+Clang |release| because of the opportunity they pose for disruption to existing
+code bases.
+
+- Clang will now correctly diagnose as ill-formed a constant expression where an
+ enum without a fixed underlying type is set to a value outside the range of
+ the enumeration's values. Due to the extended period of time this bug was
+ present in major C++ implementations (including Clang), this error has the
+ ability to be downgraded into a warning (via:
+ ``-Wno-error=enum-constexpr-conversion``) to provide a transition period for
+ users. This diagnostic is expected to turn into an error-only diagnostic in
+ the next Clang release. Fixes
+ `Issue 50055: <https://github.com/llvm/llvm-project/issues/50055>`_.
+- ``-Wincompatible-function-pointer-types`` now defaults to an error in all C
+ language modes. It may be downgraded to a warning with
+ ``-Wno-error=incompatible-function-pointer-types`` or disabled entirely with
+ ``-Wno-implicit-function-pointer-types``. *NOTE* We recommend that projects
+ using configure scripts verify the results do not change before/after setting
+ ``-Werror=incompatible-function-pointer-types`` to avoid incompatibility with
+ Clang 16.
+
+
What's New in Clang |release|?
==============================
@@ -99,14 +123,6 @@
Improvements to Clang's diagnostics
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-- Clang will now correctly diagnose as ill-formed a constant expression where an
- enum without a fixed underlying type is set to a value outside the range of
- the enumeration's values. Due to the extended period of time this bug was
- present in major C++ implementations (including Clang), this error has the
- ability to be downgraded into a warning (via: -Wno-error=enum-constexpr-conversion)
- to provide a transition period for users. This diagnostic is expected to turn
- into an error-only diagnostic in the next Clang release. Fixes
- `Issue 50055: <https://github.com/llvm/llvm-project/issues/50055>`_.
- Clang will now check compile-time determinable string literals as format strings.
Fixes `Issue 55805: <https://github.com/llvm/llvm-project/issues/55805>`_.
- ``-Wformat`` now recognizes ``%b`` for the ``printf``/``scanf`` family of
@@ -119,10 +135,6 @@
potential false positives, this diagnostic will not diagnose use of the
``true`` macro (from ``<stdbool.h>>`) in C language mode despite the macro
being defined to expand to ``1``.
-- ``-Wincompatible-function-pointer-types`` now defaults to an error in all C
- language modes. It may be downgraded to a warning with
- ``-Wno-error=incompatible-function-pointer-types`` or disabled entirely with
- ``-Wno-implicit-function-pointer-types``.
- Clang will now print more information about failed static assertions. In
particular, simple static assertion expressions are evaluated to their
compile-time value and printed out if the assertion fails.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D133771.460365.patch
Type: text/x-patch
Size: 3363 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220915/d99c4e43/attachment.bin>
More information about the cfe-commits
mailing list