@@ -762,7 +762,6 @@ impl MacroArgKind {
762762#[ derive( Debug , Clone ) ]
763763struct ParsedMacroArg {
764764 kind : MacroArgKind ,
765- span : Span ,
766765}
767766
768767impl ParsedMacroArg {
@@ -780,14 +779,10 @@ impl ParsedMacroArg {
780779struct MacroArgParser {
781780 /// Either a name of the next metavariable, a separator, or junk.
782781 buf : String ,
783- /// The start position on the current buffer.
784- lo : BytePos ,
785782 /// The first token of the current buffer.
786783 start_tok : Token ,
787784 /// `true` if we are parsing a metavariable or a repeat.
788785 is_meta_var : bool ,
789- /// The position of the last token.
790- hi : BytePos ,
791786 /// The last token parsed.
792787 last_tok : Token ,
793788 /// Holds the parsed arguments.
@@ -807,8 +802,6 @@ fn last_tok(tt: &TokenTree) -> Token {
807802impl MacroArgParser {
808803 fn new ( ) -> MacroArgParser {
809804 MacroArgParser {
810- lo : BytePos ( 0 ) ,
811- hi : BytePos ( 0 ) ,
812805 buf : String :: new ( ) ,
813806 is_meta_var : false ,
814807 last_tok : Token {
@@ -824,7 +817,6 @@ impl MacroArgParser {
824817 }
825818
826819 fn set_last_tok ( & mut self , tok : & TokenTree ) {
827- self . hi = tok. span ( ) . hi ( ) ;
828820 self . last_tok = last_tok ( tok) ;
829821 }
830822
@@ -836,7 +828,6 @@ impl MacroArgParser {
836828 } ;
837829 self . result . push ( ParsedMacroArg {
838830 kind : MacroArgKind :: Separator ( self . buf . clone ( ) , prefix) ,
839- span : mk_sp ( self . lo , self . hi ) ,
840831 } ) ;
841832 self . buf . clear ( ) ;
842833 }
@@ -849,7 +840,6 @@ impl MacroArgParser {
849840 } ;
850841 self . result . push ( ParsedMacroArg {
851842 kind : MacroArgKind :: Other ( self . buf . clone ( ) , prefix) ,
852- span : mk_sp ( self . lo , self . hi ) ,
853843 } ) ;
854844 self . buf . clear ( ) ;
855845 }
@@ -858,11 +848,10 @@ impl MacroArgParser {
858848 match iter. next ( ) {
859849 Some ( TokenTree :: Token ( Token {
860850 kind : TokenKind :: Ident ( name, _) ,
861- span ,
851+ ..
862852 } ) ) => {
863853 self . result . push ( ParsedMacroArg {
864854 kind : MacroArgKind :: MetaVariable ( name, self . buf . clone ( ) ) ,
865- span : mk_sp ( self . lo , span. hi ( ) ) ,
866855 } ) ;
867856
868857 self . buf . clear ( ) ;
@@ -873,10 +862,9 @@ impl MacroArgParser {
873862 }
874863 }
875864
876- fn add_delimited ( & mut self , inner : Vec < ParsedMacroArg > , delim : DelimToken , span : Span ) {
865+ fn add_delimited ( & mut self , inner : Vec < ParsedMacroArg > , delim : DelimToken ) {
877866 self . result . push ( ParsedMacroArg {
878867 kind : MacroArgKind :: Delimited ( delim, inner) ,
879- span,
880868 } ) ;
881869 }
882870
@@ -886,19 +874,15 @@ impl MacroArgParser {
886874 inner : Vec < ParsedMacroArg > ,
887875 delim : DelimToken ,
888876 iter : & mut Cursor ,
889- span : Span ,
890877 ) -> Option < ( ) > {
891878 let mut buffer = String :: new ( ) ;
892879 let mut first = true ;
893- let mut lo = span. lo ( ) ;
894- let mut hi = span. hi ( ) ;
895880
896881 // Parse '*', '+' or '?.
897882 for tok in iter {
898883 self . set_last_tok ( & tok) ;
899884 if first {
900885 first = false ;
901- lo = tok. span ( ) . lo ( ) ;
902886 }
903887
904888 match tok {
@@ -918,7 +902,6 @@ impl MacroArgParser {
918902 }
919903 TokenTree :: Token ( ref t) => {
920904 buffer. push_str ( & pprust:: token_to_string ( & t) ) ;
921- hi = t. span . hi ( ) ;
922905 }
923906 _ => return None ,
924907 }
@@ -930,20 +913,17 @@ impl MacroArgParser {
930913 } else {
931914 Some ( Box :: new ( ParsedMacroArg {
932915 kind : MacroArgKind :: Other ( buffer, "" . to_owned ( ) ) ,
933- span : mk_sp ( lo, hi) ,
934916 } ) )
935917 } ;
936918
937919 self . result . push ( ParsedMacroArg {
938920 kind : MacroArgKind :: Repeat ( delim, inner, another, self . last_tok . clone ( ) ) ,
939- span : mk_sp ( self . lo , self . hi ) ,
940921 } ) ;
941922 Some ( ( ) )
942923 }
943924
944925 fn update_buffer ( & mut self , t : & Token ) {
945926 if self . buf . is_empty ( ) {
946- self . lo = t. span . lo ( ) ;
947927 self . start_tok = t. clone ( ) ;
948928 } else {
949929 let needs_space = match next_space ( & self . last_tok . kind ) {
@@ -999,7 +979,6 @@ impl MacroArgParser {
999979
1000980 // Start keeping the name of this metavariable in the buffer.
1001981 self . is_meta_var = true ;
1002- self . lo = span. lo ( ) ;
1003982 self . start_tok = Token {
1004983 kind : TokenKind :: Dollar ,
1005984 span,
@@ -1012,7 +991,7 @@ impl MacroArgParser {
1012991 self . add_meta_variable ( & mut iter) ?;
1013992 }
1014993 TokenTree :: Token ( ref t) => self . update_buffer ( t) ,
1015- TokenTree :: Delimited ( delimited_span , delimited, ref tts) => {
994+ TokenTree :: Delimited ( _delimited_span , delimited, ref tts) => {
1016995 if !self . buf . is_empty ( ) {
1017996 if next_space ( & self . last_tok . kind ) == SpaceState :: Always {
1018997 self . add_separator ( ) ;
@@ -1022,16 +1001,14 @@ impl MacroArgParser {
10221001 }
10231002
10241003 // Parse the stuff inside delimiters.
1025- let mut parser = MacroArgParser :: new ( ) ;
1026- parser. lo = delimited_span. open . lo ( ) ;
1004+ let parser = MacroArgParser :: new ( ) ;
10271005 let delimited_arg = parser. parse ( tts. clone ( ) ) ?;
10281006
1029- let span = delimited_span. entire ( ) ;
10301007 if self . is_meta_var {
1031- self . add_repeat ( delimited_arg, delimited, & mut iter, span ) ?;
1008+ self . add_repeat ( delimited_arg, delimited, & mut iter) ?;
10321009 self . is_meta_var = false ;
10331010 } else {
1034- self . add_delimited ( delimited_arg, delimited, span ) ;
1011+ self . add_delimited ( delimited_arg, delimited) ;
10351012 }
10361013 }
10371014 }
0 commit comments