Szelethus created this revision. Szelethus added reviewers: hans, NoQ, vsavchenko, dcoughlin, xazax.hun, baloghadamsoftware, martong, balazske, steakhal, Charusso, jkorous, dkrupp, gamesh411. Szelethus added a project: clang. Herald added subscribers: cfe-commits, ASDenysPetrov, phosek, donat.nagy, dexonsmith, mikhail.ramalho, a.sidorin, rnkovacs, szepet, whisperity. Szelethus requested review of this revision.
Late as always, but it seems like not too late :) I tried added everyone who contributed to the static analyzer in a meaningful way, but if you did and don't find yourself on the reviewer list, please add yourself! I compiled these notes from the following list: git log llvmorg-11-init..llvmorg-11.0.0-rc2 --oneline -- clang/lib/StaticAnalyzer/ clang/include/clang/StaticAnalyzer/ Seems like this is a release to be proud of! Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D86533 Files: clang/docs/ReleaseNotes.rst Index: clang/docs/ReleaseNotes.rst =================================================================== --- clang/docs/ReleaseNotes.rst +++ clang/docs/ReleaseNotes.rst @@ -440,7 +440,60 @@ Static Analyzer --------------- -- ... +- Moved ``PlacementNewChecker`` out of alpha, making it enabled by default. + +- New checker: :ref:`alpha.core.C11Lock <alpha-core-C11Lock>` and + :ref:`alpha.fuchsia.Lock <alpha-fuchsia-lock>` checks for appropriate API + locks/unlocks. + +- New checker: :ref:`alpha.security.cert.pos.34c <alpha-security-cert-pos-34c>` + finds calls to the ``putenv`` function which pass a pointer to an automatic + variable as the 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.NoUncountedMemberChecker + <webkit-NoUncountedMemberChecker>` checks for that raw pointers and references + to uncounted types can't be used as class members, only ref-counted types. + +- New checker: :ref:`alpha.cplusplus.SmartPtr <alpha-cplusplus-SmartPtr>` check + for dereference of null smart pointers. + +- Improved the analyzer's understanding of inherited C++ constructors. + +- 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``. + +- Improve the pre- and post condition modeling of several hundred more standard + C functions. + +- While still in alpha, ``alpha.unix.PthreadLock``, the iterator and container + modeling infrastructure, ``alpha.unix.Stream``, and taint analysis were + improved greatly. + +- Improved the warning messages of several checkers. + +- Fixed a few remaining cases of checkers emmiting reports under the incorrect + checker name, and employed a few restrictions to more easily identifiy 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 recommended + for non-development purposes. + +- Added :ref:`on-demand parsing <ctu-on-demand>` capability to cross translation + unit analysis. + +- Numerous fixes for crashes, false positives and false negatives in + ``unix.Malloc``, ``osx.cocoa.NSError``, and several other checkers. + +- Numerous fixes and improvements for the HTML output. .. _release-notes-ubsan:
Index: clang/docs/ReleaseNotes.rst =================================================================== --- clang/docs/ReleaseNotes.rst +++ clang/docs/ReleaseNotes.rst @@ -440,7 +440,60 @@ Static Analyzer --------------- -- ... +- Moved ``PlacementNewChecker`` out of alpha, making it enabled by default. + +- New checker: :ref:`alpha.core.C11Lock <alpha-core-C11Lock>` and + :ref:`alpha.fuchsia.Lock <alpha-fuchsia-lock>` checks for appropriate API + locks/unlocks. + +- New checker: :ref:`alpha.security.cert.pos.34c <alpha-security-cert-pos-34c>` + finds calls to the ``putenv`` function which pass a pointer to an automatic + variable as the 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.NoUncountedMemberChecker + <webkit-NoUncountedMemberChecker>` checks for that raw pointers and references + to uncounted types can't be used as class members, only ref-counted types. + +- New checker: :ref:`alpha.cplusplus.SmartPtr <alpha-cplusplus-SmartPtr>` check + for dereference of null smart pointers. + +- Improved the analyzer's understanding of inherited C++ constructors. + +- 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``. + +- Improve the pre- and post condition modeling of several hundred more standard + C functions. + +- While still in alpha, ``alpha.unix.PthreadLock``, the iterator and container + modeling infrastructure, ``alpha.unix.Stream``, and taint analysis were + improved greatly. + +- Improved the warning messages of several checkers. + +- Fixed a few remaining cases of checkers emmiting reports under the incorrect + checker name, and employed a few restrictions to more easily identifiy 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 recommended + for non-development purposes. + +- Added :ref:`on-demand parsing <ctu-on-demand>` capability to cross translation + unit analysis. + +- Numerous fixes for crashes, false positives and false negatives in + ``unix.Malloc``, ``osx.cocoa.NSError``, and several other checkers. + +- Numerous fixes and improvements for the HTML output. .. _release-notes-ubsan:
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits