summaryrefslogtreecommitdiffstats
path: root/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp')
-rw-r--r--clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp b/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
index 7a374698f7b..3c015fef93c 100644
--- a/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
+++ b/clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
@@ -76,7 +76,12 @@ void MapExtDefNamesConsumer::handleDecl(const Decl *D) {
void MapExtDefNamesConsumer::addIfInMain(const DeclaratorDecl *DD,
SourceLocation defStart) {
- std::string LookupName = CrossTranslationUnitContext::getLookupName(DD);
+ llvm::Optional<std::string> LookupName =
+ CrossTranslationUnitContext::getLookupName(DD);
+ if (!LookupName)
+ return;
+ assert(!LookupName->empty() && "Lookup name should be non-empty.");
+
if (CurrentFileName.empty()) {
CurrentFileName =
SM.getFileEntryForID(SM.getMainFileID())->tryGetRealPathName();
@@ -89,7 +94,7 @@ void MapExtDefNamesConsumer::addIfInMain(const DeclaratorDecl *DD,
case VisibleNoLinkage:
case UniqueExternalLinkage:
if (SM.isInMainFile(defStart))
- Index[LookupName] = CurrentFileName;
+ Index[*LookupName] = CurrentFileName;
break;
default:
break;
OpenPOWER on IntegriCloud