@@ -3321,7 +3321,12 @@ impl<'a> Resolver<'a> {
33213321 if let Some ( def) = def {
33223322 match ( def, source) {
33233323 ( Def :: Macro ( ..) , _) => {
3324- err. span_label ( span, format ! ( "did you mean `{}!(...)`?" , path_str) ) ;
3324+ err. span_suggestion_with_applicability (
3325+ span,
3326+ "use `!` to invoke the macro" ,
3327+ format ! ( "{}!" , path_str) ,
3328+ Applicability :: MaybeIncorrect ,
3329+ ) ;
33253330 return ( err, candidates) ;
33263331 }
33273332 ( Def :: TyAlias ( ..) , PathSource :: Trait ( _) ) => {
@@ -3333,13 +3338,22 @@ impl<'a> Resolver<'a> {
33333338 }
33343339 ( Def :: Mod ( ..) , PathSource :: Expr ( Some ( parent) ) ) => match parent. node {
33353340 ExprKind :: Field ( _, ident) => {
3336- err. span_label ( parent. span , format ! ( "did you mean `{}::{}`?" ,
3337- path_str, ident) ) ;
3341+ err. span_suggestion_with_applicability (
3342+ parent. span ,
3343+ "use the path separator to refer to an item" ,
3344+ format ! ( "{}::{}" , path_str, ident) ,
3345+ Applicability :: MaybeIncorrect ,
3346+ ) ;
33383347 return ( err, candidates) ;
33393348 }
33403349 ExprKind :: MethodCall ( ref segment, ..) => {
3341- err. span_label ( parent. span , format ! ( "did you mean `{}::{}(...)`?" ,
3342- path_str, segment. ident) ) ;
3350+ let span = parent. span . with_hi ( segment. ident . span . hi ( ) ) ;
3351+ err. span_suggestion_with_applicability (
3352+ span,
3353+ "use the path separator to refer to an item" ,
3354+ format ! ( "{}::{}" , path_str, segment. ident) ,
3355+ Applicability :: MaybeIncorrect ,
3356+ ) ;
33433357 return ( err, candidates) ;
33443358 }
33453359 _ => { }
0 commit comments