diff options
-rw-r--r-- | include/clang/AST/ASTContext.h | 5 | ||||
-rw-r--r-- | lib/AST/ASTContext.cpp | 16 |
2 files changed, 11 insertions, 10 deletions
diff --git a/include/clang/AST/ASTContext.h b/include/clang/AST/ASTContext.h index 1ba2400e65..d559feed17 100644 --- a/include/clang/AST/ASTContext.h +++ b/include/clang/AST/ASTContext.h @@ -636,8 +636,9 @@ public: /// the same selector and is of the same kind (class or instance). /// A method in an implementation is not considered as overriding the same /// method in the interface or its categories. - void getOverriddenMethods(const NamedDecl *Method, - SmallVectorImpl<const NamedDecl *> &Overridden); + void getOverriddenMethods( + const NamedDecl *Method, + SmallVectorImpl<const NamedDecl *> &Overridden) const; /// \brief Notify the AST context that a new import declaration has been /// parsed or implicitly created within this translation unit. diff --git a/lib/AST/ASTContext.cpp b/lib/AST/ASTContext.cpp index 71764dbd97..2f7288109c 100644 --- a/lib/AST/ASTContext.cpp +++ b/lib/AST/ASTContext.cpp @@ -411,13 +411,12 @@ comments::FullComment *ASTContext::getCommentForDecl( const RawComment *RC = getRawCommentForAnyRedecl(D, &OriginalDecl); if (!RC) { if (isa<ObjCMethodDecl>(D) || isa<FunctionDecl>(D)) { - SmallVector<const NamedDecl*, 8> overridden; + SmallVector<const NamedDecl*, 8> Overridden; if (const ObjCMethodDecl *OMD = dyn_cast<ObjCMethodDecl>(D)) - addRedeclaredMethods(OMD, overridden); - const_cast<ASTContext *>(this)->getOverriddenMethods(dyn_cast<NamedDecl>(D), - overridden); - for (unsigned i = 0, e = overridden.size(); i < e; i++) { - if (comments::FullComment *FC = getCommentForDecl(overridden[i], PP)) { + addRedeclaredMethods(OMD, Overridden); + getOverriddenMethods(dyn_cast<NamedDecl>(D), Overridden); + for (unsigned i = 0, e = Overridden.size(); i < e; i++) { + if (comments::FullComment *FC = getCommentForDecl(Overridden[i], PP)) { comments::FullComment *CFC = cloneFullComment(FC, D); return CFC; } @@ -1082,8 +1081,9 @@ void ASTContext::addOverriddenMethod(const CXXMethodDecl *Method, OverriddenMethods[Method].push_back(Overridden); } -void ASTContext::getOverriddenMethods(const NamedDecl *D, - SmallVectorImpl<const NamedDecl *> &Overridden) { +void ASTContext::getOverriddenMethods( + const NamedDecl *D, + SmallVectorImpl<const NamedDecl *> &Overridden) const { assert(D); if (const CXXMethodDecl *CXXMethod = dyn_cast<CXXMethodDecl>(D)) { |