@@ -658,18 +658,21 @@ macro_rules! declare_lint {
658
658
macro_rules! declare_tool_lint {
659
659
(
660
660
$( #[ $attr: meta] ) * $vis: vis $tool: ident :: $NAME: ident, $Level: ident, $desc: expr
661
+ $( , @feature_gate = $gate: expr; ) ?
661
662
) => (
662
- $crate:: declare_tool_lint!{ $( #[ $attr] ) * $vis $tool:: $NAME, $Level, $desc, false }
663
+ $crate:: declare_tool_lint!{ $( #[ $attr] ) * $vis $tool:: $NAME, $Level, $desc, false $ ( , @feature_gate = $gate ; ) ? }
663
664
) ;
664
665
(
665
666
$( #[ $attr: meta] ) * $vis: vis $tool: ident :: $NAME: ident, $Level: ident, $desc: expr,
666
667
report_in_external_macro: $rep: expr
668
+ $( , @feature_gate = $gate: expr; ) ?
667
669
) => (
668
- $crate:: declare_tool_lint!{ $( #[ $attr] ) * $vis $tool:: $NAME, $Level, $desc, $rep}
670
+ $crate:: declare_tool_lint!{ $( #[ $attr] ) * $vis $tool:: $NAME, $Level, $desc, $rep $ ( , @feature_gate = $gate ; ) ? }
669
671
) ;
670
672
(
671
673
$( #[ $attr: meta] ) * $vis: vis $tool: ident :: $NAME: ident, $Level: ident, $desc: expr,
672
674
$external: expr
675
+ $( , @feature_gate = $gate: expr; ) ?
673
676
) => (
674
677
$( #[ $attr] ) *
675
678
$vis static $NAME: & $crate:: Lint = & $crate:: Lint {
@@ -680,8 +683,9 @@ macro_rules! declare_tool_lint {
680
683
report_in_external_macro: $external,
681
684
future_incompatible: None ,
682
685
is_plugin: true ,
683
- feature_gate: None ,
686
+ $ ( feature_gate: Some ( $gate ) , ) ?
684
687
crate_level_only: false ,
688
+ ..$crate:: Lint :: default_fields_for_macro( )
685
689
} ;
686
690
) ;
687
691
}
0 commit comments