From c3a85292697f9a2ec70cc4e5603823f60f6e7c22 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Mon, 2 May 2011 04:50:10 +0000 Subject: [PATCH] lib/Frontend/InitHeaderSearch.cpp: Tweak AddPath() to accept "/foo/bar" (not "X:\foo\bar") with -isysroot. test/PCH/reloc.c can pass. FIXME: We should consider better isysroot scheme on Win32 hosts. llvm-svn: 130683 --- clang/lib/Frontend/InitHeaderSearch.cpp | 5 +++++ clang/test/PCH/reloc.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/clang/lib/Frontend/InitHeaderSearch.cpp b/clang/lib/Frontend/InitHeaderSearch.cpp index 3da38fb04631..c552512dc957 100644 --- a/clang/lib/Frontend/InitHeaderSearch.cpp +++ b/clang/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/clang/test/PCH/reloc.c b/clang/test/PCH/reloc.c index f15c77682fd8..fd78feba6047 100644 --- a/clang/test/PCH/reloc.c +++ b/clang/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 int x = 2; // expected-error{{redefinition}}