This check aims to flag every occurence of unscoped enumerations and provide useful fix to convert them to scoped enumerations.
It works for the most cases, except when an enumeration is defined within a macro, but the name of enumeration is a macro argument. This is indicated in the documentation.
Does this need to be public?