Skip to content

Commit 3b9a869

Browse files
committed
Add test for new format_args!() temporary lifetimes.
1 parent 6bdef95 commit 3b9a869

File tree

1 file changed

+16
-0
lines changed
  • library/coretests/tests/fmt

1 file changed

+16
-0
lines changed

library/coretests/tests/fmt/mod.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,22 @@ mod builders;
22
mod float;
33
mod num;
44

5+
#[test]
6+
#[cfg(not(bootstrap))]
7+
fn test_lifetime() {
8+
// Trigger all different forms of expansion,
9+
// and check that each of them can be stored as a variable.
10+
let a = format_args!("hello");
11+
let a = format_args!("hello {a}");
12+
let a = format_args!("hello {a:1}");
13+
let a = format_args!("hello {a} {a:?}");
14+
assert_eq!(a.to_string(), "hello hello hello hello hello hello hello");
15+
16+
// Without arguments, it should also work in consts.
17+
const A: std::fmt::Arguments<'static> = format_args!("hello");
18+
assert_eq!(A.to_string(), "hello");
19+
}
20+
521
#[test]
622
fn test_format_flags() {
723
// No residual flags left by pointer formatting

0 commit comments

Comments
 (0)