Fix failure note to_str
implementation
* Serialize the level to something a little more useful for a failure note struct * Update tests accordingly
This commit is contained in:
parent
3287a65fc0
commit
02c1b892c1
4 changed files with 12 additions and 9 deletions
|
@ -1144,15 +1144,18 @@ impl EmitterWriter {
|
||||||
buffer.prepend(0, " ", Style::NoStyle);
|
buffer.prepend(0, " ", Style::NoStyle);
|
||||||
}
|
}
|
||||||
draw_note_separator(&mut buffer, 0, max_line_num_len + 1);
|
draw_note_separator(&mut buffer, 0, max_line_num_len + 1);
|
||||||
|
if *level != Level::FailureNote {
|
||||||
let level_str = level.to_string();
|
let level_str = level.to_string();
|
||||||
if !level_str.is_empty() {
|
if !level_str.is_empty() {
|
||||||
buffer.append(0, &level_str, Style::MainHeaderMsg);
|
buffer.append(0, &level_str, Style::MainHeaderMsg);
|
||||||
buffer.append(0, ": ", Style::NoStyle);
|
buffer.append(0, ": ", Style::NoStyle);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
self.msg_to_buffer(&mut buffer, msg, max_line_num_len, "note", None);
|
self.msg_to_buffer(&mut buffer, msg, max_line_num_len, "note", None);
|
||||||
} else {
|
} else {
|
||||||
let level_str = level.to_string();
|
let level_str = level.to_string();
|
||||||
if !level_str.is_empty() {
|
// The failure note level itself does not provide any useful diagnostic information
|
||||||
|
if *level != Level::FailureNote && !level_str.is_empty() {
|
||||||
buffer.append(0, &level_str, Style::Level(level.clone()));
|
buffer.append(0, &level_str, Style::Level(level.clone()));
|
||||||
}
|
}
|
||||||
// only render error codes, not lint codes
|
// only render error codes, not lint codes
|
||||||
|
@ -1161,7 +1164,7 @@ impl EmitterWriter {
|
||||||
buffer.append(0, &code, Style::Level(level.clone()));
|
buffer.append(0, &code, Style::Level(level.clone()));
|
||||||
buffer.append(0, "]", Style::Level(level.clone()));
|
buffer.append(0, "]", Style::Level(level.clone()));
|
||||||
}
|
}
|
||||||
if !level_str.is_empty() {
|
if *level != Level::FailureNote && !level_str.is_empty() {
|
||||||
buffer.append(0, ": ", header_style);
|
buffer.append(0, ": ", header_style);
|
||||||
}
|
}
|
||||||
for &(ref text, _) in msg.iter() {
|
for &(ref text, _) in msg.iter() {
|
||||||
|
|
|
@ -833,7 +833,7 @@ impl Level {
|
||||||
Warning => "warning",
|
Warning => "warning",
|
||||||
Note => "note",
|
Note => "note",
|
||||||
Help => "help",
|
Help => "help",
|
||||||
FailureNote => "",
|
FailureNote => "failure-note",
|
||||||
Cancelled => panic!("Shouldn't call on cancelled error"),
|
Cancelled => panic!("Shouldn't call on cancelled error"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,5 +15,5 @@ started: https://doc.rust-lang.org/book/
|
||||||
"}
|
"}
|
||||||
{"message":"aborting due to previous error","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to previous error
|
{"message":"aborting due to previous error","code":null,"level":"error","spans":[],"children":[],"rendered":"error: aborting due to previous error
|
||||||
"}
|
"}
|
||||||
{"message":"For more information about this error, try `rustc --explain E0601`.","code":null,"level":"","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0601`.
|
{"message":"For more information about this error, try `rustc --explain E0601`.","code":null,"level":"failure-note","spans":[],"children":[],"rendered":"For more information about this error, try `rustc --explain E0601`.
|
||||||
"}
|
"}
|
||||||
|
|
|
@ -412,7 +412,7 @@ mod foo {
|
||||||
{
|
{
|
||||||
"message": "For more information about this error, try `rustc --explain E0412`.",
|
"message": "For more information about this error, try `rustc --explain E0412`.",
|
||||||
"code": null,
|
"code": null,
|
||||||
"level": "",
|
"level": "failure-note",
|
||||||
"spans": [],
|
"spans": [],
|
||||||
"children": [],
|
"children": [],
|
||||||
"rendered": "\u001b[0m\u001b[1mFor more information about this error, try `rustc --explain E0412`.\u001b[0m
|
"rendered": "\u001b[0m\u001b[1mFor more information about this error, try `rustc --explain E0412`.\u001b[0m
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue