https://github.com/Jwata created 
https://github.com/llvm/llvm-project/pull/179410

This patch addresses several LIT test failures on Windows that occur when the 
-DLLVM_WINDOWS_PREFER_FORWARD_SLASH=ON flag is used. 

When this flag is enabled, Clang and other tools output paths with forward 
slashes, but LIT's default path substitutions (%t, %s, etc.) still use 
backslashes on Windows. This creates mismatches in FileCheck patterns.

Key changes:
- clangd: Updated TestFS and URI tests to handle native path separators 
  programmatically using llvm::sys::path::native rather than hardcoded 
  backslash strings.
- LLD: Updated ELF and COFF tests to allow for flexible slash matching in 
  FileCheck patterns (e.g., using {{/|(\\)+}} or updating RUN lines to use 
  forward slashes).
- lit: Modified llvm/subst.py to ensure command string substitutions 
  prefer forward slashes when running on Windows to match the tool output 
  expectations.

Fixes: https://crbug.com/477762548

>From e9ed1f2dc984390bc3d5ce4333acfbfe11b16f17 Mon Sep 17 00:00:00 2001
From: Junji Watanabe <[email protected]>
Date: Tue, 3 Feb 2026 13:06:36 +0900
Subject: [PATCH 1/3] [Clangd][LIT] Fix Windows test failures due to path
 separator mismatches

This patch addresses multiple test failures in `clang-tools-extra` (Clangd) and 
a configuration crash in `llvm-lit` on Windows.

*Clangd Unit Tests (Path Separators):**
Many Clangd unit tests were failing on Windows because the test infrastructure 
(`TestFS`) generated paths using the native separator (backslashes), while 
Clangd's internal
logic and URI handling were normalizing paths to forward slashes. This 
discrepancy caused failures in `BackgroundIndexTests`, `FileIndexTests`, 
`RenameTests`, and others
where expected path strings did not match actual results.

*   **`TestFS.cpp`**: Modified `testRoot()` and `testPath()` to enforce forward 
slashes (`/`) on Windows. This aligns the test filesystem simulation with 
Clangd's internal
      path normalization, resolving ~80 test failures.
*   **`URITests.cpp`**: Updated expectations in `Resolve` and `ResolveUNC` 
tests to expect forward slashes in resolved paths on Windows.
*   **`HeadersTests.cpp` & `TweakTesting.cpp`**: Added explicit path 
normalization (using `std::replace`) to fix specific test cases where path 
comparisons were failing.

**LLVM LIT (Configuration):**
*   **`subst.py`**: Fixed a crash where `command_str` could be `None` (if a 
tool was not found), but the code attempted to call `.replace()` on it when 
running on Windows.
      Added a check to ensure `command_str` is valid before processing.
---
 clang-tools-extra/clangd/unittests/HeadersTests.cpp  |  7 ++++++-
 clang-tools-extra/clangd/unittests/TestFS.cpp        | 10 +++++++++-
 clang-tools-extra/clangd/unittests/URITests.cpp      | 10 +++++-----
 .../clangd/unittests/tweaks/TweakTesting.cpp         | 10 +++++++++-
 lld/test/COFF/linkreprofullpathrsp.test              |  2 +-
 lld/test/ELF/dependency-file.s                       | 12 ++++++------
 llvm/utils/lit/lit/llvm/subst.py                     |  4 ++++
 7 files changed, 40 insertions(+), 15 deletions(-)

diff --git a/clang-tools-extra/clangd/unittests/HeadersTests.cpp 
b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
index 440582e14239a..8d9c3429c7865 100644
--- a/clang-tools-extra/clangd/unittests/HeadersTests.cpp
+++ b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
@@ -24,6 +24,7 @@
 #include "llvm/Testing/Support/Error.h"
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
+#include <algorithm>
 #include <optional>
 
 namespace clang {
@@ -186,9 +187,12 @@ TEST_F(HeadersTest, OnlyCollectInclusionsInMain) {
 #include "bar.h"
 )cpp";
   auto Includes = collectIncludes();
+  std::string ResolvedBarHeader = BarHeader;
+  std::replace(ResolvedBarHeader.begin(), ResolvedBarHeader.end(), '\\', '/');
   EXPECT_THAT(
       Includes.MainFileIncludes,
-      UnorderedElementsAre(AllOf(written("\"bar.h\""), resolved(BarHeader))));
+      UnorderedElementsAre(AllOf(written("\"bar.h\""),
+                                 resolved(ResolvedBarHeader))));
   EXPECT_THAT(Includes.includeDepth(getID(MainFile, Includes)),
               UnorderedElementsAre(Distance(getID(MainFile, Includes), 0u),
                                    Distance(getID(BarHeader, Includes), 1u),
@@ -445,5 +449,6 @@ TEST_F(HeadersTest, PresumedLocations) {
 }
 
 } // namespace
+// Force rebuild
 } // namespace clangd
 } // namespace clang
diff --git a/clang-tools-extra/clangd/unittests/TestFS.cpp 
b/clang-tools-extra/clangd/unittests/TestFS.cpp
index bb309609eda20..1b4a2e8609d34 100644
--- a/clang-tools-extra/clangd/unittests/TestFS.cpp
+++ b/clang-tools-extra/clangd/unittests/TestFS.cpp
@@ -12,6 +12,7 @@
 #include "support/Path.h"
 #include "llvm/ADT/StringRef.h"
 #include "llvm/Support/Path.h"
+#include <algorithm>
 #include <optional>
 
 namespace clang {
@@ -84,7 +85,7 @@ MockCompilationDatabase::getCompileCommand(PathRef File) 
const {
 
 const char *testRoot() {
 #ifdef _WIN32
-  return "C:\\clangd-test";
+  return "C:/clangd-test";
 #else
   return "/clangd-test";
 #endif
@@ -97,7 +98,14 @@ std::string testPath(PathRef File, llvm::sys::path::Style 
Style) {
   llvm::sys::path::native(NativeFile, Style);
   llvm::SmallString<32> Path;
   llvm::sys::path::append(Path, Style, testRoot(), NativeFile);
+#ifdef _WIN32
+  // Force forward slashes on Windows to match Clangd's behavior in this 
environment
+  std::string Result = Path.str().str();
+  std::replace(Result.begin(), Result.end(), '\\', '/');
+  return Result;
+#else
   return std::string(Path.str());
+#endif
 }
 
 /// unittest: is a scheme that refers to files relative to testRoot().
diff --git a/clang-tools-extra/clangd/unittests/URITests.cpp 
b/clang-tools-extra/clangd/unittests/URITests.cpp
index c0ccfc539c452..1beced7c9b9a9 100644
--- a/clang-tools-extra/clangd/unittests/URITests.cpp
+++ b/clang-tools-extra/clangd/unittests/URITests.cpp
@@ -133,8 +133,8 @@ TEST(URITest, ParseFailed) {
 
 TEST(URITest, Resolve) {
 #ifdef _WIN32
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), "c:\\x\\y\\z");
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), "c:\\x\\y\\z");
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), "c:/x/y/z");
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), "c:/x/y/z");
 #else
   EXPECT_EQ(resolveOrDie(parseOrDie("file:/a/b/c")), "/a/b/c");
   EXPECT_EQ(resolveOrDie(parseOrDie("file://auth/a/b/c")), "//auth/a/b/c");
@@ -149,12 +149,12 @@ TEST(URITest, Resolve) {
 TEST(URITest, ResolveUNC) {
 #ifdef _WIN32
   EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
-              "\\\\example.com\\x\\y\\z");
+              "//example.com/x/y/z");
   EXPECT_THAT(resolveOrDie(parseOrDie("file://127.0.0.1/x/y/z")),
-              "\\\\127.0.0.1\\x\\y\\z");
+              "//127.0.0.1/x/y/z");
   // Ensure non-traditional file URI still resolves to correct UNC path.
   EXPECT_THAT(resolveOrDie(parseOrDie("file:////127.0.0.1/x/y/z")),
-              "\\\\127.0.0.1\\x\\y\\z");
+              "//127.0.0.1/x/y/z");
 #else
   EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
               "//example.com/x/y/z");
diff --git a/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp 
b/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
index c26fc21d7a01c..0eeb1387f2c71 100644
--- a/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
+++ b/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
@@ -14,6 +14,7 @@
 #include "llvm/Support/Error.h"
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
+#include <algorithm>
 #include <optional>
 #include <string>
 
@@ -113,7 +114,13 @@ std::string TweakTest::apply(llvm::StringRef MarkedCode,
     if (!NewText)
       return "bad edits: " + llvm::toString(NewText.takeError());
     llvm::StringRef Unwrapped = unwrap(Context, *NewText);
-    if (It.first() == testPath(TU.Filename))
+    
+    std::string EditPath = It.first().str();
+    std::string MainPath = testPath(TU.Filename);
+    std::replace(EditPath.begin(), EditPath.end(), '\\', '/');
+    std::replace(MainPath.begin(), MainPath.end(), '\\', '/');
+
+    if (EditPath == MainPath)
       EditedMainFile = std::string(Unwrapped);
     else {
       if (!EditedFiles)
@@ -194,5 +201,6 @@ TweakWorkspaceTest::apply(StringRef InvocationFile,
   }
   return Retval;
 }
+// Force rebuild 
 } // namespace clangd
 } // namespace clang
diff --git a/lld/test/COFF/linkreprofullpathrsp.test 
b/lld/test/COFF/linkreprofullpathrsp.test
index 66f2e2ba2f859..3f319e9493432 100644
--- a/lld/test/COFF/linkreprofullpathrsp.test
+++ b/lld/test/COFF/linkreprofullpathrsp.test
@@ -14,7 +14,7 @@ Test link.exe-style /linkreprofullpathrsp: flag.
 # RUN: lld-link /subsystem:console %t.obj %p/Inputs/std32.lib 
/defaultlib:%p/Inputs/library.lib \
 # RUN:  /libpath:%p/Inputs /defaultlib:std64.lib ret42.lib /entry:main@0 
/linkreprofullpathrsp:%t.rsp \
 # RUN:   %t.pdb /wholearchive:%t.archive.lib /out:%t.exe /timestamp:0
-# # RUN: FileCheck %s --check-prefix=RSP -DT=%t -DP=%p < %t.rsp
+# RUN: FileCheck %s --check-prefix=RSP -DT=%/t -DP=%/p < %t.rsp
 
 # RUN: lld-link /subsystem:console @%t.rsp /out:%t2.exe /entry:main@0 
/timestamp:0
 # RUN: diff %t.exe %t2.exe
diff --git a/lld/test/ELF/dependency-file.s b/lld/test/ELF/dependency-file.s
index e7dbf9c7695f7..537c4cb5251bc 100644
--- a/lld/test/ELF/dependency-file.s
+++ b/lld/test/ELF/dependency-file.s
@@ -1,10 +1,10 @@
 # REQUIRES: x86
-# RUN: mkdir -p %t
-# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %t/foo.o
-# RUN: llvm-mc -filetype=obj -triple=x86_64 /dev/null -o "%t/bar baz.o"
-# RUN: llvm-mc -filetype=obj -triple=x86_64 /dev/null -o "%t/#quux$.o"
-# RUN: ld.lld -o %t/foo.exe %t/foo.o %t/"bar baz.o" "%t/#quux$.o" 
--dependency-file=%t/foo.d
-# RUN: FileCheck --match-full-lines -DFILE=%t %s < %t/foo.d
+# RUN: mkdir -p %/t
+# RUN: llvm-mc -filetype=obj -triple=x86_64 %s -o %/t/foo.o
+# RUN: llvm-mc -filetype=obj -triple=x86_64 /dev/null -o "%/t/bar baz.o"
+# RUN: llvm-mc -filetype=obj -triple=x86_64 /dev/null -o "%/t/#quux$.o"
+# RUN: ld.lld -o %/t/foo.exe %/t/foo.o %/t/"bar baz.o" "%/t/#quux$.o" 
--dependency-file=%/t/foo.d
+# RUN: FileCheck --match-full-lines -DFILE=%/t %s < %/t/foo.d
 
 # CHECK:      [[FILE]]{{/|(\\)+}}foo.exe: \
 # CHECK-NEXT:   [[FILE]]{{/|(\\)+}}foo.o \
diff --git a/llvm/utils/lit/lit/llvm/subst.py b/llvm/utils/lit/lit/llvm/subst.py
index 09ab3555a6b44..4e8ef584dd0df 100644
--- a/llvm/utils/lit/lit/llvm/subst.py
+++ b/llvm/utils/lit/lit/llvm/subst.py
@@ -1,5 +1,6 @@
 import os
 import re
+import sys
 
 import lit.util
 
@@ -117,6 +118,9 @@ def resolve(self, config, search_dirs):
         else:
             command_str = str(self.command)
 
+        if sys.platform == 'win32' and command_str:
+            command_str = command_str.replace('\\', '/')
+
         if command_str:
             if self.extra_args:
                 command_str = " ".join([command_str] + self.extra_args)

>From 113b2472750ed31baeadd1c76f2259e87ad6f48f Mon Sep 17 00:00:00 2001
From: Junji Watanabe <[email protected]>
Date: Tue, 3 Feb 2026 14:13:59 +0900
Subject: [PATCH 2/3] fix for backslashes

---
 .../clangd/unittests/HeadersTests.cpp             |  6 +-----
 clang-tools-extra/clangd/unittests/TestFS.cpp     | 15 +++++----------
 clang-tools-extra/clangd/unittests/TestFS.h       |  2 +-
 clang-tools-extra/clangd/unittests/URITests.cpp   | 10 +++++-----
 .../clangd/unittests/tweaks/TweakTesting.cpp      |  9 +--------
 5 files changed, 13 insertions(+), 29 deletions(-)

diff --git a/clang-tools-extra/clangd/unittests/HeadersTests.cpp 
b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
index 8d9c3429c7865..59809bfcac329 100644
--- a/clang-tools-extra/clangd/unittests/HeadersTests.cpp
+++ b/clang-tools-extra/clangd/unittests/HeadersTests.cpp
@@ -24,7 +24,6 @@
 #include "llvm/Testing/Support/Error.h"
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
-#include <algorithm>
 #include <optional>
 
 namespace clang {
@@ -187,12 +186,9 @@ TEST_F(HeadersTest, OnlyCollectInclusionsInMain) {
 #include "bar.h"
 )cpp";
   auto Includes = collectIncludes();
-  std::string ResolvedBarHeader = BarHeader;
-  std::replace(ResolvedBarHeader.begin(), ResolvedBarHeader.end(), '\\', '/');
   EXPECT_THAT(
       Includes.MainFileIncludes,
-      UnorderedElementsAre(AllOf(written("\"bar.h\""),
-                                 resolved(ResolvedBarHeader))));
+      UnorderedElementsAre(AllOf(written("\"bar.h\""), resolved(BarHeader))));
   EXPECT_THAT(Includes.includeDepth(getID(MainFile, Includes)),
               UnorderedElementsAre(Distance(getID(MainFile, Includes), 0u),
                                    Distance(getID(BarHeader, Includes), 1u),
diff --git a/clang-tools-extra/clangd/unittests/TestFS.cpp 
b/clang-tools-extra/clangd/unittests/TestFS.cpp
index 1b4a2e8609d34..a288710c0dc4c 100644
--- a/clang-tools-extra/clangd/unittests/TestFS.cpp
+++ b/clang-tools-extra/clangd/unittests/TestFS.cpp
@@ -83,12 +83,14 @@ MockCompilationDatabase::getCompileCommand(PathRef File) 
const {
                                   FileName, std::move(CommandLine), "")};
 }
 
-const char *testRoot() {
+std::string testRoot() {
+  llvm::SmallString<32> Path;
 #ifdef _WIN32
-  return "C:/clangd-test";
+  llvm::sys::path::native("C:/clangd-test", Path);
 #else
-  return "/clangd-test";
+  llvm::sys::path::native("/clangd-test", Path);
 #endif
+  return std::string(Path.str());
 }
 
 std::string testPath(PathRef File, llvm::sys::path::Style Style) {
@@ -98,14 +100,7 @@ std::string testPath(PathRef File, llvm::sys::path::Style 
Style) {
   llvm::sys::path::native(NativeFile, Style);
   llvm::SmallString<32> Path;
   llvm::sys::path::append(Path, Style, testRoot(), NativeFile);
-#ifdef _WIN32
-  // Force forward slashes on Windows to match Clangd's behavior in this 
environment
-  std::string Result = Path.str().str();
-  std::replace(Result.begin(), Result.end(), '\\', '/');
-  return Result;
-#else
   return std::string(Path.str());
-#endif
 }
 
 /// unittest: is a scheme that refers to files relative to testRoot().
diff --git a/clang-tools-extra/clangd/unittests/TestFS.h 
b/clang-tools-extra/clangd/unittests/TestFS.h
index 568533f3b3b91..804d94fb524ee 100644
--- a/clang-tools-extra/clangd/unittests/TestFS.h
+++ b/clang-tools-extra/clangd/unittests/TestFS.h
@@ -73,7 +73,7 @@ class MockCompilationDatabase : public 
GlobalCompilationDatabase {
 };
 
 // Returns an absolute (fake) test directory for this OS.
-const char *testRoot();
+std::string testRoot();
 
 // Returns a suitable absolute path for this OS.
 std::string testPath(PathRef File,
diff --git a/clang-tools-extra/clangd/unittests/URITests.cpp 
b/clang-tools-extra/clangd/unittests/URITests.cpp
index 1beced7c9b9a9..c0ccfc539c452 100644
--- a/clang-tools-extra/clangd/unittests/URITests.cpp
+++ b/clang-tools-extra/clangd/unittests/URITests.cpp
@@ -133,8 +133,8 @@ TEST(URITest, ParseFailed) {
 
 TEST(URITest, Resolve) {
 #ifdef _WIN32
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), "c:/x/y/z");
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), "c:/x/y/z");
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), "c:\\x\\y\\z");
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), "c:\\x\\y\\z");
 #else
   EXPECT_EQ(resolveOrDie(parseOrDie("file:/a/b/c")), "/a/b/c");
   EXPECT_EQ(resolveOrDie(parseOrDie("file://auth/a/b/c")), "//auth/a/b/c");
@@ -149,12 +149,12 @@ TEST(URITest, Resolve) {
 TEST(URITest, ResolveUNC) {
 #ifdef _WIN32
   EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
-              "//example.com/x/y/z");
+              "\\\\example.com\\x\\y\\z");
   EXPECT_THAT(resolveOrDie(parseOrDie("file://127.0.0.1/x/y/z")),
-              "//127.0.0.1/x/y/z");
+              "\\\\127.0.0.1\\x\\y\\z");
   // Ensure non-traditional file URI still resolves to correct UNC path.
   EXPECT_THAT(resolveOrDie(parseOrDie("file:////127.0.0.1/x/y/z")),
-              "//127.0.0.1/x/y/z");
+              "\\\\127.0.0.1\\x\\y\\z");
 #else
   EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
               "//example.com/x/y/z");
diff --git a/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp 
b/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
index 0eeb1387f2c71..0916838f6e201 100644
--- a/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
+++ b/clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
@@ -14,7 +14,6 @@
 #include "llvm/Support/Error.h"
 #include "gmock/gmock.h"
 #include "gtest/gtest.h"
-#include <algorithm>
 #include <optional>
 #include <string>
 
@@ -114,13 +113,7 @@ std::string TweakTest::apply(llvm::StringRef MarkedCode,
     if (!NewText)
       return "bad edits: " + llvm::toString(NewText.takeError());
     llvm::StringRef Unwrapped = unwrap(Context, *NewText);
-    
-    std::string EditPath = It.first().str();
-    std::string MainPath = testPath(TU.Filename);
-    std::replace(EditPath.begin(), EditPath.end(), '\\', '/');
-    std::replace(MainPath.begin(), MainPath.end(), '\\', '/');
-
-    if (EditPath == MainPath)
+    if (It.first() == testPath(TU.Filename))
       EditedMainFile = std::string(Unwrapped);
     else {
       if (!EditedFiles)

>From 216cc5a1051bc1b4c0e6772254107752640f6051 Mon Sep 17 00:00:00 2001
From: Junji Watanabe <[email protected]>
Date: Tue, 3 Feb 2026 16:13:24 +0900
Subject: [PATCH 3/3] fixed

---
 .../clangd/unittests/URITests.cpp             | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/clang-tools-extra/clangd/unittests/URITests.cpp 
b/clang-tools-extra/clangd/unittests/URITests.cpp
index c0ccfc539c452..a8dcb928e61d3 100644
--- a/clang-tools-extra/clangd/unittests/URITests.cpp
+++ b/clang-tools-extra/clangd/unittests/URITests.cpp
@@ -133,8 +133,10 @@ TEST(URITest, ParseFailed) {
 
 TEST(URITest, Resolve) {
 #ifdef _WIN32
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), "c:\\x\\y\\z");
-  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), "c:\\x\\y\\z");
+  llvm::SmallString<32> Expected;
+  llvm::sys::path::native("c:/x/y/z", Expected);
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c%3a/x/y/z")), Expected);
+  EXPECT_THAT(resolveOrDie(parseOrDie("file:///c:/x/y/z")), Expected);
 #else
   EXPECT_EQ(resolveOrDie(parseOrDie("file:/a/b/c")), "/a/b/c");
   EXPECT_EQ(resolveOrDie(parseOrDie("file://auth/a/b/c")), "//auth/a/b/c");
@@ -148,13 +150,16 @@ TEST(URITest, Resolve) {
 
 TEST(URITest, ResolveUNC) {
 #ifdef _WIN32
-  EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
-              "\\\\example.com\\x\\y\\z");
-  EXPECT_THAT(resolveOrDie(parseOrDie("file://127.0.0.1/x/y/z")),
-              "\\\\127.0.0.1\\x\\y\\z");
+  llvm::SmallString<32> Expected;
+  llvm::sys::path::native("//example.com/x/y/z", Expected);
+  EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")), Expected);
+
+  llvm::SmallString<32> ExpectedIP;
+  llvm::sys::path::native("//127.0.0.1/x/y/z", ExpectedIP);
+  EXPECT_THAT(resolveOrDie(parseOrDie("file://127.0.0.1/x/y/z")), ExpectedIP);
   // Ensure non-traditional file URI still resolves to correct UNC path.
   EXPECT_THAT(resolveOrDie(parseOrDie("file:////127.0.0.1/x/y/z")),
-              "\\\\127.0.0.1\\x\\y\\z");
+              ExpectedIP);
 #else
   EXPECT_THAT(resolveOrDie(parseOrDie("file://example.com/x/y/z")),
               "//example.com/x/y/z");

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to