Use some canonical path format #1339
Description
Originally created by @staktrace (rust-dev-tools/rls-data#20):
Right now if running the rust compiler on Windows with -Zsave-analysis, the Span::file_name
items usually end up with windows-style paths (e.g. Z:\foo\bar.txt
). However in some cases they appear to have a mix of windows and unix dir separators (e.g. Z:\foo\bar/lib.rs
). This is just weird. It should be consistent in what slashes it's using.
For context, this came up when trying analyze these files for searchfox on a linux host. The rls-analysis crate will read save-analysis files generated on Windows, but the Span::file_name
ends up as a PathBuf
of a single component because \
is a valid filename char on Linux. I can deal with this by doing a search-and-replace, but when the separators are mixed (both \
and /
) it makes me uneasy.
/cc @emilio