@@ -188,22 +188,6 @@ impl AstFragmentKind {
188188 }
189189}
190190
191- // We don't want to format a path using pretty-printing,
192- // `format!("{}", path)`, because that tries to insert
193- // line-breaks and is slow.
194- fn fast_print_path ( path : & ast:: Path ) -> String {
195- let mut path_str = String :: with_capacity ( 64 ) ;
196- for ( i, segment) in path. segments . iter ( ) . enumerate ( ) {
197- if i != 0 {
198- path_str. push_str ( "::" ) ;
199- }
200- if segment. ident . name != kw:: PathRoot {
201- path_str. push_str ( & segment. ident . as_str ( ) )
202- }
203- }
204- path_str
205- }
206-
207191pub struct Invocation {
208192 pub kind : InvocationKind ,
209193 fragment_kind : AstFragmentKind ,
@@ -546,9 +530,6 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
546530 _ => unreachable ! ( ) ,
547531 } ;
548532
549- let expn_info = ext. expn_info ( attr. span , & fast_print_path ( & attr. path ) ) ;
550- invoc. expansion_data . mark . set_expn_info ( expn_info) ;
551-
552533 match & ext. kind {
553534 SyntaxExtensionKind :: NonMacroAttr { mark_used } => {
554535 attr:: mark_known ( & attr) ;
@@ -682,15 +663,15 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
682663 invoc : Invocation ,
683664 ext : & SyntaxExtension )
684665 -> Option < AstFragment > {
685- let ( mark , kind) = ( invoc. expansion_data . mark , invoc . fragment_kind ) ;
666+ let kind = invoc. fragment_kind ;
686667 let ( mac, ident, span) = match invoc. kind {
687668 InvocationKind :: Bang { mac, ident, span } => ( mac, ident, span) ,
688669 _ => unreachable ! ( ) ,
689670 } ;
690671 let path = & mac. node . path ;
691672
692673 let ident = ident. unwrap_or_else ( || Ident :: invalid ( ) ) ;
693- let validate_and_set_expn_info = |this : & mut Self | {
674+ let validate = |this : & mut Self | {
694675 // feature-gate the macro invocation
695676 if let Some ( ( feature, issue) ) = ext. unstable_feature {
696677 let crate_span = this. cx . current_expansion . crate_span . unwrap ( ) ;
@@ -715,13 +696,12 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
715696 this. cx . trace_macros_diag ( ) ;
716697 return Err ( kind. dummy ( span) ) ;
717698 }
718- mark. set_expn_info ( ext. expn_info ( span, & fast_print_path ( path) ) ) ;
719699 Ok ( ( ) )
720700 } ;
721701
722702 let opt_expanded = match & ext. kind {
723703 SyntaxExtensionKind :: LegacyBang ( expander) => {
724- if let Err ( dummy_span) = validate_and_set_expn_info ( self ) {
704+ if let Err ( dummy_span) = validate ( self ) {
725705 dummy_span
726706 } else {
727707 kind. make_from ( expander. expand (
@@ -757,8 +737,6 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
757737 kind. dummy ( span)
758738 } else {
759739 self . gate_proc_macro_expansion_kind ( span, kind) ;
760- let expn_info = ext. expn_info ( span, & fast_print_path ( path) ) ;
761- invoc. expansion_data . mark . set_expn_info ( expn_info) ;
762740 let tok_result = expander. expand ( self . cx , span, mac. node . stream ( ) ) ;
763741 let result = self . parse_ast_fragment ( tok_result, kind, path, span) ;
764742 self . gate_proc_macro_expansion ( span, & result) ;
@@ -818,10 +796,6 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
818796 match & ext. kind {
819797 SyntaxExtensionKind :: Derive ( expander) |
820798 SyntaxExtensionKind :: LegacyDerive ( expander) => {
821- let expn_info =
822- ext. expn_info ( path. span , & format ! ( "derive({})" , fast_print_path( & path) ) ) ;
823- invoc. expansion_data . mark . set_expn_info ( expn_info) ;
824-
825799 let meta = ast:: MetaItem { node : ast:: MetaItemKind :: Word , span : path. span , path } ;
826800 let span = meta. span . with_ctxt ( self . cx . backtrace ( ) ) ;
827801 let items = expander. expand ( self . cx , span, & meta, item) ;
0 commit comments