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