diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2012-06-22 16:02:55 +0000 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2012-06-22 16:02:55 +0000 |
commit | 9dda4746867a747c1c3421d8a04a1b666aeb5809 (patch) | |
tree | c9a71ef716ed6ab0a7d93a73b66f7424f8e3d32a /lib/Sema/Sema.cpp | |
parent | 67e8a8b00b67a903ab4916947712963942f1ef40 (diff) |
Add a warning about almost-Doxygen trailing comments: //< and /*< ... */
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159001 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/Sema.cpp')
-rw-r--r-- | lib/Sema/Sema.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Sema/Sema.cpp b/lib/Sema/Sema.cpp index 9e4b291971..9d18a5c596 100644 --- a/lib/Sema/Sema.cpp +++ b/lib/Sema/Sema.cpp @@ -1016,6 +1016,24 @@ LambdaScopeInfo *Sema::getCurLambda() { void Sema::ActOnComment(SourceRange Comment) { RawComment RC(SourceMgr, Comment); + if (RC.isAlmostTrailingComment()) { + SourceRange MagicMarkerRange(Comment.getBegin(), + Comment.getBegin().getLocWithOffset(3)); + StringRef MagicMarkerText; + switch (RC.getKind()) { + case RawComment::CK_OrdinaryBCPL: + MagicMarkerText = "///<"; + break; + case RawComment::CK_OrdinaryC: + MagicMarkerText = "/**<"; + break; + default: + llvm_unreachable("if this is an almost Doxygen comment, " + "it should be ordinary"); + } + Diag(Comment.getBegin(), diag::warn_not_a_doxygen_trailing_member_comment) << + FixItHint::CreateReplacement(MagicMarkerRange, MagicMarkerText); + } Context.addComment(RC); } |