@@ -801,28 +801,28 @@ impl<'tcx> Visitor<'tcx> for Checker<'tcx> {
801
801
// FIXME(jdonszelmann): make it impossible to miss the or_else in the typesystem
802
802
let const_stab = attrs:: find_attr!( attrs, AttributeKind :: ConstStability { stability, ..} => * stability) ;
803
803
804
- let unstable_feature_stab =
804
+ let unstable_feature_stab =
805
805
find_attr ! ( attrs, AttributeKind :: AllowUnstableFeature ( i) => i)
806
- . map ( |i| i. as_slice ( ) )
807
- . unwrap_or_default ( ) ;
806
+ . map ( |i| i. as_slice ( ) )
807
+ . unwrap_or_default ( ) ;
808
808
809
809
// If this impl block has an #[unstable] attribute, give an
810
810
// error if all involved types and traits are stable, because
811
811
// it will have no effect.
812
812
// See: https://github.com/rust-lang/rust/issues/55436
813
813
//
814
814
// The exception is when there is both #[unstable_feature_bound(..)] and
815
- // #![unstable(feature = "..", issue = "..")] that have the same symbol because
815
+ // #![unstable(feature = "..", issue = "..")] that have the same symbol because
816
816
// that can effectively mark an impl as unstable.
817
817
//
818
818
// For example:
819
819
// ```
820
- // #[unstable_feature_bound(feat_foo)]
820
+ // #[unstable_feature_bound(feat_foo)]
821
821
// #![unstable(feature = "feat_foo", issue = "none")]
822
822
// impl Foo for Bar {}
823
823
// ```
824
824
if let Some ( (
825
- Stability { level : attrs:: StabilityLevel :: Unstable { ..} , feature} ,
825
+ Stability { level : attrs:: StabilityLevel :: Unstable { .. } , feature } ,
826
826
span,
827
827
) ) = stab
828
828
{
@@ -831,7 +831,7 @@ impl<'tcx> Visitor<'tcx> for Checker<'tcx> {
831
831
c. visit_trait_ref ( t) ;
832
832
833
833
// Skip the lint if the impl is marked as unstable using
834
- // #[unstable_feature_bound(..)]
834
+ // #[unstable_feature_bound(..)]
835
835
let mut unstable_feature_bound_in_effect = false ;
836
836
for ( unstable_bound_feat_name, _) in unstable_feature_stab {
837
837
if * unstable_bound_feat_name == feature {
@@ -841,7 +841,10 @@ impl<'tcx> Visitor<'tcx> for Checker<'tcx> {
841
841
842
842
// do not lint when the trait isn't resolved, since resolution error should
843
843
// be fixed first
844
- if t. path . res != Res :: Err && c. fully_stable && !unstable_feature_bound_in_effect {
844
+ if t. path . res != Res :: Err
845
+ && c. fully_stable
846
+ && !unstable_feature_bound_in_effect
847
+ {
845
848
self . tcx . emit_node_span_lint (
846
849
INEFFECTIVE_UNSTABLE_TRAIT_IMPL ,
847
850
item. hir_id ( ) ,
0 commit comments