aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Frontend/InitHeaderSearch.cpp5
-rw-r--r--test/PCH/reloc.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/lib/Frontend/InitHeaderSearch.cpp b/lib/Frontend/InitHeaderSearch.cpp
index 3da38fb046..c552512dc9 100644
--- a/lib/Frontend/InitHeaderSearch.cpp
+++ b/lib/Frontend/InitHeaderSearch.cpp
@@ -118,7 +118,12 @@ void InitHeaderSearch::AddPath(const llvm::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) {
MappedPathStorage.clear();
MappedPathStr =
diff --git a/test/PCH/reloc.c b/test/PCH/reloc.c
index f15c77682f..fd78feba60 100644
--- a/test/PCH/reloc.c
+++ b/test/PCH/reloc.c
@@ -1,7 +1,7 @@
// RUN: %clang_cc1 -emit-pch -o %t -relocatable-pch -isysroot %S/libroot %S/libroot/usr/include/reloc.h
// RUN: %clang_cc1 -include-pch %t -isysroot %S/libroot %s -verify
// RUN: not %clang_cc1 -include-pch %t %s
-// XFAIL: mingw,win32
+
#include <reloc.h>
int x = 2; // expected-error{{redefinition}}