Files
clang-p2996/clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
Philipp Jung 669627d0c7 Add check 'cppcoreguidelines-use-enum-class' (#138282)
Warn on non-class enum definitions as suggested by the Core Guidelines:
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Renum-class
2025-06-18 11:02:53 +02:00

36 lines
833 B
ReStructuredText

.. title:: clang-tidy - cppcoreguidelines-use-enum-class
cppcoreguidelines-use-enum-class
================================
Finds unscoped (non-class) ``enum`` declarations and suggests using
``enum class`` instead.
This check implements `Enum.3
<https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Renum-class>`_
from the C++ Core Guidelines."
Example:
.. code-block:: c++
enum E {}; // use "enum class E {};" instead
enum class E {}; // OK
struct S {
enum E {}; // use "enum class E {};" instead
// OK with option IgnoreUnscopedEnumsInClasses
};
namespace N {
enum E {}; // use "enum class E {};" instead
}
Options
-------
.. option:: IgnoreUnscopedEnumsInClasses
When `true`, ignores unscoped ``enum`` declarations in classes.
Default is `false`.