[clangd] Change constness of parameters to findExplicitRefs
Summary: Recursive AST requires non-const ast nodes, but it doesn't really mutate them. In addition to that, in clangd we mostly have const ast nodes. So it makes sense to move the const_cast into callee rather than having it at every caller in the future. Reviewers: ilya-biryukov Subscribers: MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68027 llvm-svn: 372888
This commit is contained in:
parent
de44f434e8
commit
007e4fe901
|
@ -616,15 +616,15 @@ private:
|
|||
};
|
||||
} // namespace
|
||||
|
||||
void findExplicitReferences(Stmt *S,
|
||||
void findExplicitReferences(const Stmt *S,
|
||||
llvm::function_ref<void(ReferenceLoc)> Out) {
|
||||
assert(S);
|
||||
ExplicitReferenceColletor(Out).TraverseStmt(S);
|
||||
ExplicitReferenceColletor(Out).TraverseStmt(const_cast<Stmt *>(S));
|
||||
}
|
||||
void findExplicitReferences(Decl *D,
|
||||
void findExplicitReferences(const Decl *D,
|
||||
llvm::function_ref<void(ReferenceLoc)> Out) {
|
||||
assert(D);
|
||||
ExplicitReferenceColletor(Out).TraverseDecl(D);
|
||||
ExplicitReferenceColletor(Out).TraverseDecl(const_cast<Decl *>(D));
|
||||
}
|
||||
|
||||
llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, DeclRelation R) {
|
||||
|
|
|
@ -101,9 +101,9 @@ llvm::raw_ostream &operator<<(llvm::raw_ostream &OS, ReferenceLoc R);
|
|||
/// qualifiers.
|
||||
/// FIXME: currently this does not report references to overloaded operators.
|
||||
/// FIXME: extend to report location information about declaration names too.
|
||||
void findExplicitReferences(Stmt *S,
|
||||
void findExplicitReferences(const Stmt *S,
|
||||
llvm::function_ref<void(ReferenceLoc)> Out);
|
||||
void findExplicitReferences(Decl *D,
|
||||
void findExplicitReferences(const Decl *D,
|
||||
llvm::function_ref<void(ReferenceLoc)> Out);
|
||||
|
||||
/// Similar to targetDecl(), however instead of applying a filter, all possible
|
||||
|
|
Loading…
Reference in New Issue