#![allow(clippy::print_literal)] #![warn(clippy::print_with_newline)] fn main() { eprintln!("Hello"); eprintln!("Hello {}", "world"); eprintln!("Hello {} {}", "world", "#2"); eprintln!("{}", 1265); eprintln!(); // these are all fine eprint!(""); eprint!("Hello"); eprintln!("Hello"); eprintln!("Hello\n"); eprintln!("Hello {}\n", "world"); eprint!("Issue\n{}", 1265); eprint!("{}", 1265); eprint!("\n{}", 1275); eprint!("\n\n"); eprint!("like eof\n\n"); eprint!("Hello {} {}\n\n", "world", "#2"); eprintln!("\ndon't\nwarn\nfor\nmultiple\nnewlines\n"); // #3126 eprintln!("\nbla\n\n"); // #3126 // Escaping eprint!("\\n"); // #3514 eprintln!("\\"); // should fail eprint!("\\\\n"); // Raw strings eprint!(r"\n"); // #3778 // Literal newlines should also fail eprintln!( ); eprintln!( ); // Don't warn on CRLF (#4208) eprint!("\r\n"); eprint!("foo\r\n"); eprintln!("\\r"); eprint!("foo\rbar\n"); // Ignore expanded format strings macro_rules! newline { () => { "\n" }; } eprint!(newline!()); }