comment parsing. Add couple more needed doxygen tags.
authorFariborz Jahanian <fjahanian@apple.com>
Wed, 10 Apr 2013 23:10:42 +0000 (23:10 +0000)
committerFariborz Jahanian <fjahanian@apple.com>
Wed, 10 Apr 2013 23:10:42 +0000 (23:10 +0000)
// rdar://12379053

llvm-svn: 179238

clang/include/clang/AST/CommentCommands.td
clang/test/Index/comment-misc-tags.m

index b166cd6..6712e76 100644 (file)
@@ -121,6 +121,7 @@ def Headerfile : BlockCommand<"headerfile"> { let IsHeaderfileCommand = 1; }
 // We don't do any additional semantic analysis for the following
 // BlockCommands.  It might be a good idea to do something extra for them, but
 // for now we model them as plain BlockCommands.
+def Arg        : BlockCommand<"arg">;
 def Attention  : BlockCommand<"attention">;
 def Author     : BlockCommand<"author">;
 def Authors    : BlockCommand<"authors">;
@@ -128,6 +129,7 @@ def Bug        : BlockCommand<"bug">;
 def Copyright  : BlockCommand<"copyright">;
 def Date       : BlockCommand<"date">;
 def Invariant  : BlockCommand<"invariant">;
+def Li         : BlockCommand<"li">;
 def Note       : BlockCommand<"note">;
 def Post       : BlockCommand<"post">;
 def Pre        : BlockCommand<"pre">;
index f1ca418..426102d 100644 (file)
 // CHECK:       (CXComment_BlockCommand CommandName=[seealso]
 // CHECK-NEXT:     (CXComment_Paragraph
 // CHECK-NEXT:     (CXComment_Text Text=[ //k_ref/doc/uid/XX30000905-CH204 Programming] HasTrailingNewline)
+
+// rdar://12379053
+/*!
+\arg \c AlignLeft left alignment.
+\li \c AlignRight right alignment.
+
+  No other types of alignment are supported.
+*/
+struct S {
+  int AlignLeft;
+  int AlignRight;
+};
+
+// CHECK:       (CXComment_BlockCommand CommandName=[arg]
+// CHECK-NEXT:    (CXComment_Paragraph
+// CHECK-NEXT:    (CXComment_Text Text=[ ] IsWhitespace)
+// CHECK-NEXT:    (CXComment_InlineCommand CommandName=[c] RenderMonospaced Arg[0]=AlignLeft)
+// CHECK-NEXT:    (CXComment_Text Text=[ left alignment.] HasTrailingNewline)))
+// CHECK:       (CXComment_BlockCommand CommandName=[li]
+// CHECK-NEXT:    (CXComment_Paragraph
+// CHECK-NEXT:    (CXComment_Text Text=[ ] IsWhitespace)
+// CHECK-NEXT:    (CXComment_InlineCommand CommandName=[c] RenderMonospaced Arg[0]=AlignRight)
+// CHECK-NEXT:    (CXComment_Text Text=[ right alignment.])))
+// CHECK:       (CXComment_Paragraph
+// CHECK-NEXT:    (CXComment_Text Text=[  No other types of alignment are supported.]))