[clangd] Attempt to fix failing Windows buildbots.

The assertion is failing on Windows, probably because path separator is different.

For the failure see:
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/28072/steps/test/logs/stdio

git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@371422 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/clangd/index/CanonicalIncludes.cpp b/clangd/index/CanonicalIncludes.cpp
index aee6e3f..4f9d2f2 100644
--- a/clangd/index/CanonicalIncludes.cpp
+++ b/clangd/index/CanonicalIncludes.cpp
@@ -47,6 +47,7 @@
 
   int Components = 1;
 
+  // FIXME: check that this works on Windows and add tests.
   for (auto It = llvm::sys::path::rbegin(Header),
             End = llvm::sys::path::rend(Header);
        It != End && Components <= MaxSuffixComponents; ++It, ++Components) {
@@ -759,12 +760,14 @@
   });
   // Check MaxSuffixComponents constant is correct.
   assert(llvm::all_of(SystemHeaderMap->keys(), [](llvm::StringRef Path) {
-    return std::distance(llvm::sys::path::begin(Path),
-                         llvm::sys::path::end(Path)) <= MaxSuffixComponents;
+    return std::distance(
+               llvm::sys::path::begin(Path, llvm::sys::path::Style::posix),
+               llvm::sys::path::end(Path)) <= MaxSuffixComponents;
   }));
   // ... and precise.
   assert(llvm::find_if(SystemHeaderMap->keys(), [](llvm::StringRef Path) {
-           return std::distance(llvm::sys::path::begin(Path),
+           return std::distance(llvm::sys::path::begin(
+                                    Path, llvm::sys::path::Style::posix),
                                 llvm::sys::path::end(Path)) ==
                   MaxSuffixComponents;
          }) != SystemHeaderMap->keys().end());