diff options
| author | Joshua Nelson <jyn514@gmail.com> | 2021-07-10 22:06:10 -0400 |
|---|---|---|
| committer | Joshua Nelson <jyn514@gmail.com> | 2021-08-16 05:41:16 +0000 |
| commit | 03df65497e51c8a69e16ab8d4bc7a7d1b3d471dc (patch) | |
| tree | d17b558ebfac6cca775ca5bac84b8b15d7671ec8 /compiler | |
| parent | 2bd17c1d43bba43412cc2f051323a279d6751e43 (diff) | |
| download | rust-03df65497e51c8a69e16ab8d4bc7a7d1b3d471dc.tar.gz rust-03df65497e51c8a69e16ab8d4bc7a7d1b3d471dc.zip | |
feature gate doc(primitive)
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/rustc_feature/src/active.rs | 3 | ||||
| -rw-r--r-- | compiler/rustc_passes/src/check_attr.rs | 17 | ||||
| -rw-r--r-- | compiler/rustc_span/src/symbol.rs | 1 |
3 files changed, 20 insertions, 1 deletions
diff --git a/compiler/rustc_feature/src/active.rs b/compiler/rustc_feature/src/active.rs index 73b29d65e91..56dac253c54 100644 --- a/compiler/rustc_feature/src/active.rs +++ b/compiler/rustc_feature/src/active.rs @@ -682,6 +682,9 @@ declare_features! ( /// Allows explicit generic arguments specification with `impl Trait` present. (active, explicit_generic_args_with_impl_trait, "1.56.0", Some(83701), None), + /// Allows using doc(primitive) without a future-incompat warning + (active, doc_primitive, "1.56.0", Some(88070), None), + // ------------------------------------------------------------------------- // feature-group-end: actual feature gates // ------------------------------------------------------------------------- diff --git a/compiler/rustc_passes/src/check_attr.rs b/compiler/rustc_passes/src/check_attr.rs index 7cca11f20bb..1bb6b899875 100644 --- a/compiler/rustc_passes/src/check_attr.rs +++ b/compiler/rustc_passes/src/check_attr.rs @@ -794,9 +794,24 @@ impl CheckAttrVisitor<'tcx> { | sym::notable_trait | sym::passes | sym::plugins - | sym::primitive | sym::test => {} + sym::primitive => { + if !self.tcx.features().doc_primitive { + self.tcx.struct_span_lint_hir( + INVALID_DOC_ATTRIBUTES, + hir_id, + i_meta.span, + |lint| { + let mut diag = lint.build( + "`doc(primitive)` should never have been stable", + ); + diag.emit(); + }, + ); + } + } + _ => { self.tcx.struct_span_lint_hir( INVALID_DOC_ATTRIBUTES, diff --git a/compiler/rustc_span/src/symbol.rs b/compiler/rustc_span/src/symbol.rs index 1d91b327901..19e90a64abc 100644 --- a/compiler/rustc_span/src/symbol.rs +++ b/compiler/rustc_span/src/symbol.rs @@ -513,6 +513,7 @@ symbols! { doc_keyword, doc_masked, doc_notable_trait, + doc_primitive, doc_spotlight, doctest, document_private_items, |
