about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-04-30 04:04:21 +0000
committerbors <bors@rust-lang.org>2025-04-30 04:04:21 +0000
commit427288b3ce2d574847fdb41cc3184c893750e09a (patch)
treeda53c66372e8ab8e65c01bb2fbc76572ee849863
parentf242d6c26cc6fc187257bd1be9590b4b39632425 (diff)
parentbc8df506f643d16fa4cd76f0e03e50a1a84fd2e1 (diff)
downloadrust-427288b3ce2d574847fdb41cc3184c893750e09a.tar.gz
rust-427288b3ce2d574847fdb41cc3184c893750e09a.zip
Auto merge of #140188 - nnethercote:streamline-format-macro, r=cuviper
Streamline the `format` macro.

Removing the unnecessary local variable speeds up compilation a little.

r? `@cuviper`
-rw-r--r--library/alloc/src/macros.rs3
-rw-r--r--tests/pretty/issue-4264.pp14
2 files changed, 7 insertions, 10 deletions
diff --git a/library/alloc/src/macros.rs b/library/alloc/src/macros.rs
index 214192b8c9a..1e6e2ae8c36 100644
--- a/library/alloc/src/macros.rs
+++ b/library/alloc/src/macros.rs
@@ -105,8 +105,7 @@ macro_rules! vec {
 macro_rules! format {
     ($($arg:tt)*) => {
         $crate::__export::must_use({
-            let res = $crate::fmt::format($crate::__export::format_args!($($arg)*));
-            res
+            $crate::fmt::format($crate::__export::format_args!($($arg)*))
         })
     }
 }
diff --git a/tests/pretty/issue-4264.pp b/tests/pretty/issue-4264.pp
index fa958d9f1e8..3cff6ca33da 100644
--- a/tests/pretty/issue-4264.pp
+++ b/tests/pretty/issue-4264.pp
@@ -31,14 +31,12 @@ fn bar() ({
 
     ((::alloc::__export::must_use as
             fn(String) -> String {must_use::<String>})(({
-            let res =
-                ((::alloc::fmt::format as
-                        for<'a> fn(Arguments<'a>) -> String {format})(((format_arguments::new_const
-                            as
-                            fn(&[&'static str; 1]) -> Arguments<'_> {Arguments::<'_>::new_const::<1>})((&([("test"
-                                        as &str)] as [&str; 1]) as &[&str; 1])) as Arguments<'_>))
-                    as String);
-            (res as String)
+            ((::alloc::fmt::format as
+                    for<'a> fn(Arguments<'a>) -> String {format})(((format_arguments::new_const
+                        as
+                        fn(&[&'static str; 1]) -> Arguments<'_> {Arguments::<'_>::new_const::<1>})((&([("test"
+                                    as &str)] as [&str; 1]) as &[&str; 1])) as Arguments<'_>))
+                as String)
         } as String)) as String);
 } as ())
 type Foo = [i32; (3 as usize)];