Otherwise we don't warn on a struct containing a single public int, but
we warn on a struct containing a single public std::string, which is
inconsistent.
Details
Diff Detail
Event Timeline
clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp | ||
---|---|---|
22 | maybe return llvm::any_of(Node.methods(), [](const CXXMethodDecl /* dunno which type this would be */& M) { return !M->isImplicit(); });? |
Some nits.
clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp | ||
---|---|---|
21 | let's keep this one as-is. | |
25–28 | And change this to something like AST_MATCHER(CXXRecordDecl, hasNonStaticNonImplicitMethod) { return hasMethod(unless(anyOf(isStaticStorageClass(), isImplicit()))) .matches(Node, Finder, Builder); } | |
68–71 | Comment needs updating? | |
docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.rst | ||
8–9 | I don't like the wording. We are not looking for explicit methods, |
LG other than two nits, thank you!
clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp | ||
---|---|---|
25 | Please do rename it though, from hasNonStaticMethod to hasNonStaticNonImplicitMethod or something. | |
test/clang-tidy/misc-non-private-member-variables-in-classes.cpp | ||
38 | Can you please duplicate this test and add one static method (into S1Implicit, i think?). |
docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.rst | ||
---|---|---|
9 | Just a small remark: What do you mean exactly by "user-provided" ? The term "user-provided" is defined in 11.4.2 [dcl.fct.def.default]/5 as
|
docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.rst | ||
---|---|---|
9 | Yeah, i'm not sure what is the right word to use here, |
docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.rst | ||
---|---|---|
9 | A suggestion without looking at the rest of the patch: It depends on whether you want to include explicitly defaulted/deleted |
docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.rst | ||
---|---|---|
9 |
Yes, i do not think those should be exempt, i.e. i think the current code is correct (more tests needed?) |
Sorry, forgot to use the magic line at the end of the commit message to auto-close this review. Done in r351686, anyhow.
let's keep this one as-is.