CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
91 lines
1.9 KiB
ReStructuredText
91 lines
1.9 KiB
ReStructuredText
.. title:: clang-tidy - modernize-use-noexcept
|
|
|
|
modernize-use-noexcept
|
|
======================
|
|
|
|
This check replaces deprecated dynamic exception specifications with
|
|
the appropriate noexcept specification (introduced in C++11). By
|
|
default this check will replace ``throw()`` with ``noexcept``,
|
|
and ``throw(<exception>[,...])`` or ``throw(...)`` with
|
|
``noexcept(false)``.
|
|
|
|
Example
|
|
-------
|
|
|
|
.. code-block:: c++
|
|
|
|
void foo() throw();
|
|
void bar() throw(int) {}
|
|
|
|
transforms to:
|
|
|
|
.. code-block:: c++
|
|
|
|
void foo() noexcept;
|
|
void bar() noexcept(false) {}
|
|
|
|
Options
|
|
-------
|
|
|
|
.. option:: ReplacementString
|
|
|
|
Users can use :option:`ReplacementString` to specify a macro to use
|
|
instead of ``noexcept``. This is useful when maintaining source code
|
|
that uses custom exception specification marking other than
|
|
``noexcept``. Fix-it hints will only be generated for non-throwing
|
|
specifications.
|
|
|
|
Example
|
|
^^^^^^^
|
|
|
|
.. code-block:: c++
|
|
|
|
void bar() throw(int);
|
|
void foo() throw();
|
|
|
|
transforms to:
|
|
|
|
.. code-block:: c++
|
|
|
|
void bar() throw(int); // No fix-it generated.
|
|
void foo() NOEXCEPT;
|
|
|
|
if the :option:`ReplacementString` option is set to `NOEXCEPT`.
|
|
|
|
.. option:: UseNoexceptFalse
|
|
|
|
Enabled by default, disabling will generate fix-it hints that remove
|
|
throwing dynamic exception specs, e.g., ``throw(<something>)``,
|
|
completely without providing a replacement text, except for
|
|
destructors and delete operators that are ``noexcept(true)`` by
|
|
default.
|
|
|
|
Example
|
|
^^^^^^^
|
|
|
|
.. code-block:: c++
|
|
|
|
void foo() throw(int) {}
|
|
|
|
struct bar {
|
|
void foobar() throw(int);
|
|
void operator delete(void *ptr) throw(int);
|
|
void operator delete[](void *ptr) throw(int);
|
|
~bar() throw(int);
|
|
}
|
|
|
|
transforms to:
|
|
|
|
.. code-block:: c++
|
|
|
|
void foo() {}
|
|
|
|
struct bar {
|
|
void foobar();
|
|
void operator delete(void *ptr) noexcept(false);
|
|
void operator delete[](void *ptr) noexcept(false);
|
|
~bar() noexcept(false);
|
|
}
|
|
|
|
if the :option:`UseNoexceptFalse` option is set to `false`.
|