Author: Kadir Cetinkaya Date: 2020-02-27T09:54:21+01:00 New Revision: f31fc1043d384e0b699fcb114694a5d8e1f51784
URL: https://github.com/llvm/llvm-project/commit/f31fc1043d384e0b699fcb114694a5d8e1f51784 DIFF: https://github.com/llvm/llvm-project/commit/f31fc1043d384e0b699fcb114694a5d8e1f51784.diff LOG: [clangd] Get rid of lexer usage in AST.cpp Reviewers: sammccall Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D75193 Added: Modified: clang-tools-extra/clangd/AST.cpp clang-tools-extra/clangd/AST.h Removed: ################################################################################ diff --git a/clang-tools-extra/clangd/AST.cpp b/clang-tools-extra/clangd/AST.cpp index 836eb6a36459..021080c301f7 100644 --- a/clang-tools-extra/clangd/AST.cpp +++ b/clang-tools-extra/clangd/AST.cpp @@ -25,7 +25,6 @@ #include "clang/Basic/SourceManager.h" #include "clang/Basic/Specifiers.h" #include "clang/Index/USRGeneration.h" -#include "clang/Lex/Lexer.h" #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/Optional.h" #include "llvm/ADT/STLExtras.h" @@ -417,16 +416,8 @@ class DeducedTypeVisitor : public RecursiveASTVisitor<DeducedTypeVisitor> { llvm::Optional<QualType> getDeducedType(ASTContext &ASTCtx, SourceLocation Loc) { - Token Tok; - // Only try to find a deduced type if the token is auto or decltype. - if (!Loc.isValid() || - Lexer::getRawToken(Loc, Tok, ASTCtx.getSourceManager(), - ASTCtx.getLangOpts(), false) || - !Tok.is(tok::raw_identifier) || - !(Tok.getRawIdentifier() == "auto" || - Tok.getRawIdentifier() == "decltype")) { + if (!Loc.isValid()) return {}; - } DeducedTypeVisitor V(Loc); V.TraverseAST(ASTCtx); if (V.DeducedType.isNull()) diff --git a/clang-tools-extra/clangd/AST.h b/clang-tools-extra/clangd/AST.h index a40aeaf32a77..c8b6008339e2 100644 --- a/clang-tools-extra/clangd/AST.h +++ b/clang-tools-extra/clangd/AST.h @@ -109,7 +109,6 @@ NestedNameSpecifierLoc getQualifierLoc(const NamedDecl &ND); QualType declaredType(const TypeDecl *D); /// Retrieves the deduced type at a given location (auto, decltype). -/// Retuns None unless Loc starts an auto/decltype token. /// It will return the underlying type. llvm::Optional<QualType> getDeducedType(ASTContext &, SourceLocation Loc); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits