Fix escaped backslash in windows file not found message

When a module is declared, but no matching file exists, rustc gives
an error like 'help: name the file either foo.rs or foo/mod.rs inside
the directory "src/bar"'. However, at on windows, the backslash was
double-escaped when naming the directory.

It did this because the string was printed in debug mode ( "{:?}" ) to
surround it with quotes. However, it should just be printed like any
other directory in an error message and surrounded by escaped quotes,
rather than relying on the debug print to add quotes ( "\"{}\"" ).
This commit is contained in:
Phlosioneer 2018-03-29 07:03:24 -04:00
parent 482a913fb3
commit 19eedf98ff

View File

@ -460,7 +460,7 @@ impl Error {
ref dir_path } => { ref dir_path } => {
let mut err = struct_span_err!(handler, sp, E0583, let mut err = struct_span_err!(handler, sp, E0583,
"file not found for module `{}`", mod_name); "file not found for module `{}`", mod_name);
err.help(&format!("name the file either {} or {} inside the directory {:?}", err.help(&format!("name the file either {} or {} inside the directory \"{}\"",
default_path, default_path,
secondary_path, secondary_path,
dir_path)); dir_path));