From b23eb5e3f7c43c40fe7e5ede5484285becd2f14e Mon Sep 17 00:00:00 2001 From: Alexander Kornienko Date: Mon, 17 Nov 2014 17:32:32 +0000 Subject: [clang-tidy] Move the missing namespace comment warnings to the closing brace Summary: The google-readability-namespace-comments/llvm-namespace-comment warnings are quite confusing when they appear at the beginning of a long namespace and the closing brace is not in sight. For convenience added notes pointing to the start of the namespace. Reviewers: klimek Reviewed By: klimek Subscribers: curdeius, cfe-commits Differential Revision: http://reviews.llvm.org/D6251 llvm-svn: 222145 --- .../clang-tidy/readability/NamespaceCommentCheck.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp') diff --git a/clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp b/clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp index b284150dc73..76856ee7aa0 100644 --- a/clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp +++ b/clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp @@ -117,10 +117,18 @@ void NamespaceCommentCheck::check(const MatchFinder::MatchResult &Result) { NeedLineBreak = false; } - diag(ND->getLocation(), "namespace not terminated with a closing comment") + std::string NamespaceName = + ND->isAnonymousNamespace() + ? "anonymous namespace" + : ("namespace '" + ND->getNameAsString() + "'"); + + diag(AfterRBrace, "%0 not terminated with a closing comment") + << NamespaceName << FixItHint::CreateInsertion(AfterRBrace, std::string(SpacesBeforeComments, ' ') + getNamespaceComment(ND, NeedLineBreak)); + diag(ND->getLocation(), "%0 starts here", DiagnosticIDs::Note) + << NamespaceName; } } // namespace readability -- cgit v1.2.3