From f53c145ef18db6543e8e5420e172e04b6054db2e Mon Sep 17 00:00:00 2001 From: Esteban Küber Date: Sat, 14 Jul 2018 20:50:30 -0700 Subject: Improve suggestion for missing fmt str in println Avoid using `concat!(fmt, "\n")` to improve the diagnostics being emitted when the first `println!()` argument isn't a formatting string literal. --- src/libstd/macros.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src/libstd') diff --git a/src/libstd/macros.rs b/src/libstd/macros.rs index 75f038407c1..a4a6ed73c61 100644 --- a/src/libstd/macros.rs +++ b/src/libstd/macros.rs @@ -155,8 +155,14 @@ macro_rules! print { #[stable(feature = "rust1", since = "1.0.0")] macro_rules! println { () => (print!("\n")); - ($fmt:expr) => (print!(concat!($fmt, "\n"))); - ($fmt:expr, $($arg:tt)*) => (print!(concat!($fmt, "\n"), $($arg)*)); + ($fmt:expr) => ({ + print!($fmt); + print!("\n"); + }); + ($fmt:expr, $($arg:tt)*) => ({ + print!($fmt, $($arg)*); + print!("\n"); + }); } /// Macro for printing to the standard error. -- cgit 1.4.1-3-g733a5