2023-08-24 19:32:12 +00:00
|
|
|
//@no-rustfix: overlapping suggestions
|
2021-03-25 18:29:11 +00:00
|
|
|
#![allow(unused_must_use)]
|
2023-10-06 15:35:45 +00:00
|
|
|
#![warn(clippy::write_literal)]
|
2021-03-25 18:29:11 +00:00
|
|
|
|
|
|
|
use std::io::Write;
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let mut v = Vec::new();
|
|
|
|
|
2022-01-27 14:12:45 +00:00
|
|
|
writeln!(v, "{}", "{hello}");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
|
|
|
//~| NOTE: `-D clippy::write-literal` implied by `-D warnings`
|
2022-01-27 14:12:45 +00:00
|
|
|
writeln!(v, r"{}", r"{hello}");
|
2023-10-06 15:35:45 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-01-27 14:12:45 +00:00
|
|
|
writeln!(v, "{}", '\'');
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-01-27 14:12:45 +00:00
|
|
|
writeln!(v, "{}", '"');
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, r"{}", '"');
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-01-27 14:12:45 +00:00
|
|
|
writeln!(v, r"{}", '\'');
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2021-03-25 18:29:11 +00:00
|
|
|
writeln!(
|
2022-01-27 14:12:45 +00:00
|
|
|
v,
|
2021-03-25 18:29:11 +00:00
|
|
|
"some {}",
|
|
|
|
"hello \
|
2023-10-06 15:35:45 +00:00
|
|
|
world!",
|
|
|
|
//~^^ ERROR: literal with an empty format string
|
2021-03-25 18:29:11 +00:00
|
|
|
);
|
|
|
|
writeln!(
|
2022-01-27 14:12:45 +00:00
|
|
|
v,
|
2021-03-25 18:29:11 +00:00
|
|
|
"some {}\
|
|
|
|
{} \\ {}",
|
2023-10-06 15:35:45 +00:00
|
|
|
"1", "2", "3",
|
2021-03-25 18:29:11 +00:00
|
|
|
);
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, "{}", "\\");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, r"{}", "\\");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, r#"{}"#, "\\");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, "{}", r"\");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
2022-09-21 17:02:37 +00:00
|
|
|
writeln!(v, "{}", "\r");
|
2023-08-24 19:32:12 +00:00
|
|
|
//~^ ERROR: literal with an empty format string
|
|
|
|
// hard mode
|
|
|
|
writeln!(v, r#"{}{}"#, '#', '"');
|
|
|
|
//~^ ERROR: literal with an empty format string
|
|
|
|
// should not lint
|
|
|
|
writeln!(v, r"{}", "\r");
|
2021-03-25 18:29:11 +00:00
|
|
|
}
|