[PATCH] D114602: [clang-tidy] Improve documentation of bugprone-unhandled-exception-at-new [NFC]
Whisperity via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Nov 26 04:28:15 PST 2021
whisperity added inline comments.
================
Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone-unhandled-exception-at-new.rst:8-10
Calls to ``new`` can throw exceptions of type ``std::bad_alloc`` that should
be handled by the code. Alternatively, the nonthrowing form of ``new`` can be
used. The check verifies that the exception is handled in the function
----------------
`by the code` is either superfluous or misleading. Did you mean that the exception should be caught and handled in the same scope where the allocation took place?
================
Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone-unhandled-exception-at-new.rst:16-17
+
+The exception handler is checked for types ``std::bad_alloc``,
+``std::exception``, and catch-all handler.
The check assumes that any user-defined ``operator new`` is either
----------------
================
Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone-unhandled-exception-at-new.rst:19-20
The check assumes that any user-defined ``operator new`` is either
``noexcept`` or may throw an exception of type ``std::bad_alloc`` (or derived
from it). Other exception types or exceptions occurring in the object's
constructor are not taken into account.
----------------
What does
> exception types or exceptions
mean?
================
Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone-unhandled-exception-at-new.rst:26
+ int *f() noexcept {
+ int *p = new int[1000]; // warning: exception handler is missing
+ // ...
----------------
Is that the warning message the check prints?
================
Comment at: clang-tools-extra/docs/clang-tidy/checks/bugprone-unhandled-exception-at-new.rst:35
+
+ int *f1() { // no 'noexcept'
+ int *p = new int[1000]; // no warning: exception can be handled outside
----------------
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D114602/new/
https://reviews.llvm.org/D114602
More information about the cfe-commits
mailing list