summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy
diff options
context:
space:
mode:
authorStephane Moore <mog@google.com>2018-12-14 03:13:31 +0000
committerStephane Moore <mog@google.com>2018-12-14 03:13:31 +0000
commitb69ece899d60c5397a884442733c93fa6cf0824b (patch)
treea9fb7b7ece337c58b6db44a9b451e51da7dd0f19 /clang-tools-extra/clang-tidy
parent918adb56d865df7896d3c5514066ebff476bd612 (diff)
downloadbcm5719-llvm-b69ece899d60c5397a884442733c93fa6cf0824b.tar.gz
bcm5719-llvm-b69ece899d60c5397a884442733c93fa6cf0824b.zip
[clang-tidy] Improve google-objc-function-naming diagnostics 📙
Summary: The diagnostics from google-objc-function-naming check will be more actionable if they provide a brief description of the requirements from the Google Objective-C style guide. The more descriptive diagnostics may help clarify that functions in the global namespace must have an appropriate prefix followed by Pascal case (engineers working previously with static functions might not immediately understand the different requirements of static and non-static functions). Test Notes: Verified against the clang-tidy tests. Reviewers: benhamilton, aaron.ballman Reviewed By: benhamilton Subscribers: MyDeveloperDay, xazax.hun, cfe-commits Differential Revision: https://reviews.llvm.org/D55482 llvm-svn: 349123
Diffstat (limited to 'clang-tools-extra/clang-tidy')
-rw-r--r--clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp b/clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
index 6d07472ef54..f7064708d4b 100644
--- a/clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
+++ b/clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
@@ -110,10 +110,12 @@ void FunctionNamingCheck::registerMatchers(MatchFinder *Finder) {
void FunctionNamingCheck::check(const MatchFinder::MatchResult &Result) {
const auto *MatchedDecl = Result.Nodes.getNodeAs<FunctionDecl>("function");
+ bool IsGlobal = MatchedDecl->getStorageClass() != SC_Static;
diag(MatchedDecl->getLocation(),
- "function name %0 not using function naming conventions described by "
- "Google Objective-C style guide")
- << MatchedDecl << generateFixItHint(MatchedDecl);
+ "%select{static function|function in global namespace}1 named %0 must "
+ "%select{be in|have an appropriate prefix followed by}1 Pascal case as "
+ "required by Google Objective-C style guide")
+ << MatchedDecl << IsGlobal << generateFixItHint(MatchedDecl);
}
} // namespace objc
OpenPOWER on IntegriCloud