diff options
| author | Dylan DPC <dylan.dpc@gmail.com> | 2021-02-18 16:57:41 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-18 16:57:41 +0100 |
| commit | 5ca94cd00a0d571b6aeb092a7da4798124acfde2 (patch) | |
| tree | 2957fac693218944f461666c54ceb9489d731b85 /compiler | |
| parent | 04df75a4292a8bbf096fd316d0544a5a95b51e9b (diff) | |
| parent | 3c4fe1e3dbc1f060d10c2dc974d2c496db4ed74d (diff) | |
| download | rust-5ca94cd00a0d571b6aeb092a7da4798124acfde2.tar.gz rust-5ca94cd00a0d571b6aeb092a7da4798124acfde2.zip | |
Rollup merge of #82246 - jesusprubio:add-long-explanation-e0549, r=GuillaumeGomez
Add long explanation for E0549 Helps with #61137
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/rustc_error_codes/src/error_codes.rs | 4 | ||||
| -rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0549.md | 37 |
2 files changed, 38 insertions, 3 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes.rs b/compiler/rustc_error_codes/src/error_codes.rs index 8944711f38f..c4330694504 100644 --- a/compiler/rustc_error_codes/src/error_codes.rs +++ b/compiler/rustc_error_codes/src/error_codes.rs @@ -290,6 +290,7 @@ E0543: include_str!("./error_codes/E0543.md"), E0545: include_str!("./error_codes/E0545.md"), E0546: include_str!("./error_codes/E0546.md"), E0547: include_str!("./error_codes/E0547.md"), +E0549: include_str!("./error_codes/E0549.md"), E0550: include_str!("./error_codes/E0550.md"), E0551: include_str!("./error_codes/E0551.md"), E0552: include_str!("./error_codes/E0552.md"), @@ -608,9 +609,6 @@ E0781: include_str!("./error_codes/E0781.md"), // E0540, // multiple rustc_deprecated attributes E0544, // multiple stability levels // E0548, // replaced with a generic attribute input check - // rustc_deprecated attribute must be paired with either stable or unstable - // attribute - E0549, E0553, // multiple rustc_const_unstable attributes // E0555, // replaced with a generic attribute input check // E0558, // replaced with a generic attribute input check diff --git a/compiler/rustc_error_codes/src/error_codes/E0549.md b/compiler/rustc_error_codes/src/error_codes/E0549.md new file mode 100644 index 00000000000..d4b78e7e0d6 --- /dev/null +++ b/compiler/rustc_error_codes/src/error_codes/E0549.md @@ -0,0 +1,37 @@ +A `rustc_deprecated` attribute wasn't paired with a `stable`/`unstable` +attribute. + +Erroneous code example: + +```compile_fail,E0549 +#![feature(staged_api)] +#![stable(since = "1.0.0", feature = "test")] + +#[rustc_deprecated( + since = "1.0.1", + reason = "explanation for deprecation" +)] // invalid +fn _deprecated_fn() {} +``` + +To fix this issue, you need to add also an attribute `stable` or `unstable`. +Example: + +``` +#![feature(staged_api)] +#![stable(since = "1.0.0", feature = "test")] + +#[stable(since = "1.0.0", feature = "test")] +#[rustc_deprecated( + since = "1.0.1", + reason = "explanation for deprecation" +)] // ok! +fn _deprecated_fn() {} +``` + +See the [How Rust is Made and “Nightly Rust”][how-rust-made-nightly] appendix +of the Book and the [Stability attributes][stability-attributes] section of the +Rustc Dev Guide for more details. + +[how-rust-made-nightly]: https://doc.rust-lang.org/book/appendix-07-nightly-rust.html +[stability-attributes]: https://rustc-dev-guide.rust-lang.org/stability.html |
