aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2013-01-29 23:59:37 +0000
committerDaniel Dunbar <daniel@zuster.org>2013-01-29 23:59:37 +0000
commit49ffaeff757daa79dc5bf73d4c1ad7dd856aa77f (patch)
tree4faba56f9d744dfe2ca2156df3b866ba9ee3f12d
parent8425a5413b437a0b6ac04c475e7cf54cc9977880 (diff)
[Frontend] Factor out helper function, for clarity.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173853 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Frontend/InitHeaderSearch.cpp19
1 files changed, 10 insertions, 9 deletions
diff --git a/lib/Frontend/InitHeaderSearch.cpp b/lib/Frontend/InitHeaderSearch.cpp
index f378fc2f53..f595fb1585 100644
--- a/lib/Frontend/InitHeaderSearch.cpp
+++ b/lib/Frontend/InitHeaderSearch.cpp
@@ -103,6 +103,14 @@ public:
} // end anonymous namespace.
+static bool CanPrefixSysroot(StringRef Path) {
+#if defined(_WIN32)
+ return !Path.empty() && llvm::sys::path::is_separator(Path[0]);
+#else
+ return llvm::sys::path::is_absolute(Path);
+#endif
+}
+
void InitHeaderSearch::AddPath(const Twine &Path,
IncludeDirGroup Group, bool isCXXAware,
bool isFramework, bool IgnoreSysRoot) {
@@ -115,16 +123,9 @@ void InitHeaderSearch::AddPath(const Twine &Path,
// Handle isysroot.
if ((Group == System || Group == CXXSystem) && !IgnoreSysRoot &&
-#if defined(_WIN32)
- !MappedPathStr.empty() &&
- llvm::sys::path::is_separator(MappedPathStr[0]) &&
-#else
- llvm::sys::path::is_absolute(MappedPathStr) &&
-#endif
- IsNotEmptyOrRoot) {
+ CanPrefixSysroot(MappedPathStr) && IsNotEmptyOrRoot) {
MappedPathStorage.clear();
- MappedPathStr =
- (IncludeSysroot + Path).toStringRef(MappedPathStorage);
+ MappedPathStr = (IncludeSysroot + Path).toStringRef(MappedPathStorage);
}
// Compute the DirectoryLookup type.