modernize-use-using¶
The check converts the usage of typedef
with using
keyword.
Before:
typedef int variable;
class Class{};
typedef void (Class::* MyPtrType)() const;
typedef struct { int a; } R_t, *R_p;
After:
using variable = int;
class Class{};
using MyPtrType = void (Class::*)() const;
using R_t = struct { int a; };
using R_p = R_t*;
The checker ignores typedef within extern “C” { … } blocks.
extern "C" {
typedef int InExternC; // Left intact.
}
This check requires using C++11 or higher to run.
Options¶
- IgnoreMacros¶
If set to true, the check will not give warnings inside macros. Default is true.
- IgnoreExternC¶
If set to true, the check will not give warning inside extern “C”`scope. Default is `false