[llvm-branch-commits] [clang] 791b7e9 - [release][docs] Add 11.0.0. release notes for the Clang Static Analyzer
Kristóf Umann via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue Sep 15 07:50:51 PDT 2020
Author: Kristóf Umann
Date: 2020-09-15T16:49:35+02:00
New Revision: 791b7e9f73e0064153a7c3db8045a7333a8c390c
URL: https://github.com/llvm/llvm-project/commit/791b7e9f73e0064153a7c3db8045a7333a8c390c
DIFF: https://github.com/llvm/llvm-project/commit/791b7e9f73e0064153a7c3db8045a7333a8c390c.diff
LOG: [release][docs] Add 11.0.0. release notes for the Clang Static Analyzer
Differential Revision: https://reviews.llvm.org/D86533
Added:
Modified:
clang/docs/ReleaseNotes.rst
Removed:
################################################################################
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index c39be709d86c..ee257194d57f 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -603,10 +603,77 @@ libclang
- ...
+.. _release-notes-clang-static-analyzer:
+
Static Analyzer
---------------
-- ...
+- Improved the analyzer's understanding of inherited C++ constructors.
+
+- Improved the analyzer's understanding of dynamic class method dispatching in
+ Objective-C.
+
+- Greatly improved the analyzer's constraint solver by better understanding
+ when constraints are imposed on multiple symbolic values that are known to be
+ equal or known to be non-equal. It will now also efficiently reject impossible
+ if-branches between known comparison expressions.
+
+- Added :ref:`on-demand parsing <ctu-on-demand>` capability to Cross Translation
+ Unit (CTU) analysis.
+
+- Numerous fixes and improvements for the HTML output.
+
+- New checker: :ref:`alpha.core.C11Lock <alpha-core-C11Lock>` and
+ :ref:`alpha.fuchsia.Lock <alpha-fuchsia-lock>` checks for their respective
+ locking APIs.
+
+- New checker: :ref:`alpha.security.cert.pos.34c <alpha-security-cert-pos-34c>`
+ finds calls to ``putenv`` where a pointer to an autmoatic variable is passed
+ as an argument.
+
+- New checker: :ref:`webkit.NoUncountedMemberChecker
+ <webkit-NoUncountedMemberChecker>` to enforce the existence of virtual
+ destructors for all uncounted types used as base classes.
+
+- New checker: :ref:`webkit.RefCntblBaseVirtualDtor
+ <webkit-RefCntblBaseVirtualDtor>` checks that only ref-counted types
+ are used as class members, not raw pointers and references to uncounted
+ types.
+
+- New checker: :ref:`alpha.cplusplus.SmartPtr <alpha-cplusplus-SmartPtr>` check
+ for dereference of null smart pointers.
+
+- Moved ``PlacementNewChecker`` out of alpha, making it enabled by default.
+
+- Added support for multi-dimensional variadic arrays in ``core.VLASize``.
+
+- Added a check for insufficient storage in array placement new calls, as well
+ as support for alignment variants to ``cplusplus.PlacementNew``.
+
+- While still in alpha, ``alpha.unix.PthreadLock``, the iterator and container
+ modeling infrastructure, ``alpha.unix.Stream``, and taint analysis were
+ improved greatly. An ongoing, currently off-by-default improvement was made on
+ the pre-condition modeling of several functions defined in the POSIX standard.
+
+- Improved the warning messages of several checkers.
+
+- Fixed a few remaining cases of checkers emitting reports under incorrect
+ checker names, and employed a few restrictions to more easily identify and
+ avoid such errors.
+
+- Moved several non-reporting checkers (those that model, among other things,
+ standard functions, but emit no diagnostics) to be listed under
+ ``-analyzer-checker-help-developer`` instead of ``-analyzer-checker-help``.
+ Manually enabling or disabling checkers found on this list is not supported
+ in production.
+
+- Numerous fixes for crashes, false positives and false negatives in
+ ``unix.Malloc``, ``osx.cocoa.NSError``, and several other checkers.
+
+- Implemented a dockerized testing system to more easily determine the
+ correctness and performance impact of a change to the static analyzer itself.
+ The currently beta-version tool is found in
+ ``(llvm-project repository)/clang/utils/analyzer/SATest.py``.
.. _release-notes-ubsan:
More information about the llvm-branch-commits
mailing list