1
+ use std::ops::Range;
2
+
1
3
use parse::Position::ArgumentNamed;
2
4
use rustc_ast::ptr::P;
3
5
use rustc_ast::tokenstream::TokenStream;
@@ -335,7 +337,7 @@ fn make_format_args(
335
337
return ExpandResult::Ready(Err(guar));
336
338
}
337
339
338
- let to_span = |inner_span: parse::InnerSpan | {
340
+ let to_span = |inner_span: Range<usize> | {
339
341
is_source_literal.then(|| {
340
342
fmt_span.from_inner(InnerSpan { start: inner_span.start, end: inner_span.end })
341
343
})
@@ -407,7 +409,7 @@ fn make_format_args(
407
409
let mut placeholder_index = 0;
408
410
409
411
for piece in &pieces {
410
- match * piece {
412
+ match piece.clone() {
411
413
parse::Piece::Lit(s) => {
412
414
unfinished_literal.push_str(s);
413
415
}
@@ -417,7 +419,8 @@ fn make_format_args(
417
419
unfinished_literal.clear();
418
420
}
419
421
420
- let span = parser.arg_places.get(placeholder_index).and_then(|&s| to_span(s));
422
+ let span =
423
+ parser.arg_places.get(placeholder_index).and_then(|s| to_span(s.clone()));
421
424
placeholder_index += 1;
422
425
423
426
let position_span = to_span(position_span);
@@ -609,7 +612,7 @@ fn make_format_args(
609
612
fn invalid_placeholder_type_error(
610
613
ecx: &ExtCtxt<'_>,
611
614
ty: &str,
612
- ty_span: Option<parse::InnerSpan >,
615
+ ty_span: Option<Range<usize> >,
613
616
fmt_span: Span,
614
617
) {
615
618
let sp = ty_span.map(|sp| fmt_span.from_inner(InnerSpan::new(sp.start, sp.end)));
0 commit comments