File tree Expand file tree Collapse file tree 3 files changed +21
-2
lines changed Expand file tree Collapse file tree 3 files changed +21
-2
lines changed Original file line number Diff line number Diff line change 11use clippy_utils:: diagnostics:: span_lint_and_sugg;
22use clippy_utils:: ty:: same_type_and_consts;
3- use clippy_utils:: { meets_msrv, msrvs} ;
3+ use clippy_utils:: { is_from_proc_macro , meets_msrv, msrvs} ;
44use if_chain:: if_chain;
55use rustc_data_structures:: fx:: FxHashSet ;
66use rustc_errors:: Applicability ;
@@ -87,7 +87,7 @@ impl_lint_pass!(UseSelf => [USE_SELF]);
8787const SEGMENTS_MSG : & str = "segments should be composed of at least 1 element" ;
8888
8989impl < ' tcx > LateLintPass < ' tcx > for UseSelf {
90- fn check_item ( & mut self , _cx : & LateContext < ' _ > , item : & Item < ' _ > ) {
90+ fn check_item ( & mut self , cx : & LateContext < ' tcx > , item : & Item < ' tcx > ) {
9191 if matches ! ( item. kind, ItemKind :: OpaqueTy ( _) ) {
9292 // skip over `ItemKind::OpaqueTy` in order to lint `foo() -> impl <..>`
9393 return ;
@@ -103,6 +103,7 @@ impl<'tcx> LateLintPass<'tcx> for UseSelf {
103103 if parameters. as_ref( ) . map_or( true , |params| {
104104 !params. parenthesized && !params. args. iter( ) . any( |arg| matches!( arg, GenericArg :: Lifetime ( _) ) )
105105 } ) ;
106+ if !is_from_proc_macro( cx, item) ; // expensive, should be last check
106107 then {
107108 StackItem :: Check {
108109 impl_id: item. def_id,
Original file line number Diff line number Diff line change @@ -608,3 +608,12 @@ mod issue8845 {
608608 }
609609 }
610610}
611+
612+ mod issue6902 {
613+ use serde::Serialize;
614+
615+ #[derive(Serialize)]
616+ pub enum Foo {
617+ Bar = 1,
618+ }
619+ }
Original file line number Diff line number Diff line change @@ -608,3 +608,12 @@ mod issue8845 {
608608 }
609609 }
610610}
611+
612+ mod issue6902 {
613+ use serde:: Serialize ;
614+
615+ #[ derive( Serialize ) ]
616+ pub enum Foo {
617+ Bar = 1 ,
618+ }
619+ }
You can’t perform that action at this time.
0 commit comments