It looks like the new implementation is correct, since there were TODOs
here about getting the new behavior.
I am not sure if "C:..\.." should become "C:" or "C:\", though. The new
output doesn't precisely match the TODO message, but it seems
appropriate given the specification of remove_dots and how .. traversals
work at the root directory.
{R"(\\net)", R"(\\net)"},
{R"(c:\..)", R"(c:\)"},
{R"(c:\.)", R"(c:\)"},
- // TODO: fix llvm::sys::path::remove_dots() to return "\" below.
- {R"(\..)", R"(\..)"},
+ {R"(\..)", R"(\)"},
// {R"(c:..)", R"(c:..)"},
{R"(..)", R"(..)"},
{R"(.)", R"(.)"},
- // TODO: fix llvm::sys::path::remove_dots() to return "c:\" below.
- {R"(c:..\..)", R"(c:\..\..)"},
+ {R"(c:..\..)", R"(c:)"},
{R"(..\..)", R"(..\..)"},
{R"(foo\..)", R"(.)"},
{R"(foo\..\bar)", R"(bar)"},