Skip to content

Commit 8d5da92

Browse files
Merge #6795
6795: format_args: handle key-value arguments r=jonas-schievink a=jonas-schievink fixes #6728 bors r+ Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2 parents 06a03ba + 948832d commit 8d5da92

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

crates/hir_expand/src/builtin_macro.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,12 @@ fn format_args_expand(
245245
if args.is_empty() {
246246
return ExpandResult::only_err(mbe::ExpandError::NoMatchingRule);
247247
}
248+
for arg in &mut args {
249+
// Remove `key =`.
250+
if matches!(arg.get(1), Some(tt::TokenTree::Leaf(tt::Leaf::Punct(p))) if p.char == '=') {
251+
arg.drain(..2);
252+
}
253+
}
248254
let _format_string = args.remove(0);
249255
let arg_tts = args.into_iter().flat_map(|arg| {
250256
quote! { std::fmt::ArgumentV1::new(&(##arg), std::fmt::Display::fmt), }

0 commit comments

Comments
 (0)