File tree Expand file tree Collapse file tree 1 file changed +12
-6
lines changed Expand file tree Collapse file tree 1 file changed +12
-6
lines changed Original file line number Diff line number Diff line change @@ -727,7 +727,9 @@ impl EmitterWriter {
727727 cm : & codemap:: CodeMap ,
728728 sp : Span )
729729 -> io:: Result < ( ) > {
730+ let mut last_span = codemap:: DUMMY_SP ;
730731 let mut sp_opt = Some ( sp) ;
732+
731733 while let Some ( sp) = sp_opt {
732734 sp_opt = try!( cm. with_expn_info ( sp. expn_id , |expn_info| -> io:: Result < _ > {
733735 match expn_info {
@@ -737,12 +739,16 @@ impl EmitterWriter {
737739 codemap:: MacroBang ( ..) => ( "" , "!" ) ,
738740 codemap:: CompilerExpansion ( ..) => ( "" , "" ) ,
739741 } ;
740- try!( self . print_diagnostic ( & cm. span_to_string ( ei. call_site ) , Note ,
741- & format ! ( "in this expansion of {}{}{}" ,
742- pre,
743- ei. callee. name( ) ,
744- post) ,
745- None ) ) ;
742+ // Don't print recursive invocations
743+ if ei. call_site != last_span {
744+ last_span = ei. call_site ;
745+ try!( self . print_diagnostic ( & cm. span_to_string ( ei. call_site ) , Note ,
746+ & format ! ( "in this expansion of {}{}{}" ,
747+ pre,
748+ ei. callee. name( ) ,
749+ post) ,
750+ None ) ) ;
751+ }
746752 Ok ( Some ( ei. call_site ) )
747753 }
748754 None => Ok ( None )
You can’t perform that action at this time.
0 commit comments