getOriginalSourceFileName and getOriginalSourceFile can return a StringRef.
MaybeAddSystemRootToFilename doesn't need to return anything, it modifies
its argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166988 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/Frontend/ASTUnit.h b/include/clang/Frontend/ASTUnit.h
index 065fc44..fc27bb9 100644
--- a/include/clang/Frontend/ASTUnit.h
+++ b/include/clang/Frontend/ASTUnit.h
@@ -467,7 +467,7 @@
const FileSystemOptions &getFileSystemOpts() const { return FileSystemOpts; }
- const std::string &getOriginalSourceFileName() {
+ const StringRef getOriginalSourceFileName() {
return OriginalSourceFile;
}
diff --git a/include/clang/Serialization/ASTReader.h b/include/clang/Serialization/ASTReader.h
index 36eae76..c0d93c3 100644
--- a/include/clang/Serialization/ASTReader.h
+++ b/include/clang/Serialization/ASTReader.h
@@ -900,7 +900,7 @@
/// into account all the necessary relocations.
const FileEntry *getFileEntry(StringRef filename);
- StringRef MaybeAddSystemRootToFilename(ModuleFile &M, std::string &Filename);
+ void MaybeAddSystemRootToFilename(ModuleFile &M, std::string &Filename);
ASTReadResult ReadASTCore(StringRef FileName, ModuleKind Type,
ModuleFile *ImportedBy,
@@ -1163,7 +1163,7 @@
/// \brief Retrieve the name of the original source file name for the primary
/// module file.
- const std::string &getOriginalSourceFile() {
+ StringRef getOriginalSourceFile() {
return ModuleMgr.getPrimaryModule().OriginalSourceFileName;
}
diff --git a/lib/Serialization/ASTReader.cpp b/lib/Serialization/ASTReader.cpp
index 4857856..874d2c4 100644
--- a/lib/Serialization/ASTReader.cpp
+++ b/lib/Serialization/ASTReader.cpp
@@ -1679,19 +1679,19 @@
/// \brief If we are loading a relocatable PCH file, and the filename is
/// not an absolute path, add the system root to the beginning of the file
/// name.
-StringRef ASTReader::MaybeAddSystemRootToFilename(ModuleFile &M,
- std::string &Filename) {
+void ASTReader::MaybeAddSystemRootToFilename(ModuleFile &M,
+ std::string &Filename) {
// If this is not a relocatable PCH file, there's nothing to do.
if (!M.RelocatablePCH)
- return Filename;
+ return;
if (Filename.empty() || llvm::sys::path::is_absolute(Filename))
- return Filename;
+ return;
if (isysroot.empty()) {
// If no system root was given, default to '/'
Filename.insert(Filename.begin(), '/');
- return Filename;
+ return;
}
unsigned Length = isysroot.size();
@@ -1699,7 +1699,6 @@
Filename.insert(Filename.begin(), '/');
Filename.insert(Filename.begin(), isysroot.begin(), isysroot.end());
- return Filename;
}
ASTReader::ASTReadResult