Patch to fix doxygen trailing comments for ObjectiveC methods.
// rdar://14258334


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@187893 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/ASTContext.cpp b/lib/AST/ASTContext.cpp
index 1fcb6aa..65e5e6d 100644
--- a/lib/AST/ASTContext.cpp
+++ b/lib/AST/ASTContext.cpp
@@ -183,7 +183,7 @@
   if (Comment != RawComments.end() &&
       (*Comment)->isDocumentation() && (*Comment)->isTrailingComment() &&
       (isa<FieldDecl>(D) || isa<EnumConstantDecl>(D) || isa<VarDecl>(D) ||
-       isa<ObjCPropertyDecl>(D))) {
+       isa<ObjCMethodDecl>(D) || isa<ObjCPropertyDecl>(D))) {
     std::pair<FileID, unsigned> CommentBeginDecomp
       = SourceMgr.getDecomposedLoc((*Comment)->getSourceRange().getBegin());
     // Check that Doxygen trailing comment comes after the declaration, starts
diff --git a/test/Index/comment-misc-tags.m b/test/Index/comment-misc-tags.m
index 85553b0..19affec 100644
--- a/test/Index/comment-misc-tags.m
+++ b/test/Index/comment-misc-tags.m
@@ -119,6 +119,7 @@
 @property (nonatomic, copy,   readwrite) NSString *     property1;
 @property (nonatomic, copy,   readwrite) NSString *     property2;        ///< This is the second property and it does not work.
 @property (nonatomic, copy,   readwrite) NSString *     property3;        /**< This is the third property and it does not work. */
+- (void)test; /*!< documentation for test method */
 @end
 // CHECK:  CommentAST=[
 // CHECK-NEXT:    (CXComment_FullComment
@@ -132,3 +133,7 @@
 // CHECK-NEXT:    (CXComment_FullComment
 // CHECK-NEXT:       (CXComment_Paragraph
 // CHECK-NEXT:         (CXComment_Text Text=[ This is the third property and it does not work. ])))]
+// CHECK:  CommentAST=[
+// CHECK-NEXT:    (CXComment_FullComment
+// CHECK-NEXT:       (CXComment_Paragraph
+// CHECK-NEXT:         (CXComment_Text Text=[ documentation for test method ])))]