diff options
-rw-r--r-- | clang/include/clang/AST/CommentSema.h | 1 | ||||
-rw-r--r-- | clang/lib/AST/CommentSema.cpp | 16 | ||||
-rw-r--r-- | clang/test/Sema/warn-documentation.m | 19 |
3 files changed, 1 insertions, 35 deletions
diff --git a/clang/include/clang/AST/CommentSema.h b/clang/include/clang/AST/CommentSema.h index 490b88c1bb1..15e454dcc38 100644 --- a/clang/include/clang/AST/CommentSema.h +++ b/clang/include/clang/AST/CommentSema.h @@ -220,7 +220,6 @@ public: bool isUnionDecl(); bool isObjCInterfaceDecl(); bool isObjCProtocolDecl(); - bool isFunctionOrMethodVariadic(); ArrayRef<const ParmVarDecl *> getParamVars(); diff --git a/clang/lib/AST/CommentSema.cpp b/clang/lib/AST/CommentSema.cpp index e6a5b85ed66..c242eb0f606 100644 --- a/clang/lib/AST/CommentSema.cpp +++ b/clang/lib/AST/CommentSema.cpp @@ -720,7 +720,7 @@ void Sema::resolveParamCommandIndexes(const FullComment *FC) { SmallVector<ParamCommandComment *, 8> ParamVarDocs; ArrayRef<const ParmVarDecl *> ParamVars = getParamVars(); - ParamVarDocs.resize(ParamVars.size() + isFunctionOrMethodVariadic(), NULL); + ParamVarDocs.resize(ParamVars.size(), NULL); // First pass over all \\param commands: resolve all parameter names. for (Comment::child_iterator I = FC->child_begin(), E = FC->child_end(); @@ -808,18 +808,6 @@ bool Sema::isObjCMethodDecl() { return isFunctionDecl() && ThisDeclInfo->CurrentDecl && isa<ObjCMethodDecl>(ThisDeclInfo->CurrentDecl); } - -bool Sema::isFunctionOrMethodVariadic() { - if (!isAnyFunctionDecl() && !isObjCMethodDecl()) - return false; - if (const FunctionDecl *FD = - dyn_cast<FunctionDecl>(ThisDeclInfo->CurrentDecl)) - return FD->isVariadic(); - if (const ObjCMethodDecl *MD = - dyn_cast<ObjCMethodDecl>(ThisDeclInfo->CurrentDecl)) - return MD->isVariadic(); - return false; -} /// isFunctionPointerVarDecl - returns 'true' if declaration is a pointer to /// function decl. @@ -918,8 +906,6 @@ unsigned Sema::resolveParmVarReference(StringRef Name, if (II && II->getName() == Name) return i; } - if (Name == "..." && isFunctionOrMethodVariadic()) - return ParamVars.size(); return ParamCommandComment::InvalidParamIndex; } diff --git a/clang/test/Sema/warn-documentation.m b/clang/test/Sema/warn-documentation.m index e348dba3e0c..17dd92e6eba 100644 --- a/clang/test/Sema/warn-documentation.m +++ b/clang/test/Sema/warn-documentation.m @@ -215,22 +215,3 @@ int FooBar(); /// \brief comment -(void)meth {} @end - -// rdar://14124644 -@interface rdar14124644 -/// @param[in] arg somthing -/// @param[in] ... This is vararg -- (void) VarArgMeth : (id)arg, ...; -@end - -@implementation rdar14124644 -/// @param[in] arg somthing -/// @param[in] ... This is vararg -- (void) VarArgMeth : (id)arg, ... {} -@end - -/// @param[in] format somthing -/// @param[in] ... -/// Variable arguments that are needed for the printf style -/// format string \a format. -int printf(const char* format, ...); |