]> git.lizzy.rs Git - rust.git/commitdiff
docs: revert removal of `E0729`
authorEzra Shaw <ezrasure@outlook.com>
Sun, 1 Jan 2023 20:11:36 +0000 (09:11 +1300)
committerEzra Shaw <ezrasure@outlook.com>
Sun, 1 Jan 2023 20:11:36 +0000 (09:11 +1300)
compiler/rustc_error_codes/src/error_codes.rs
compiler/rustc_error_codes/src/error_codes/E0729.md [new file with mode: 0644]
src/tools/tidy/src/error_codes.rs

index 137325e6fabfdec57e037045383dfba57c98ae31..3fba2cf57494deb0dd74572e90d59578424b5305 100644 (file)
 E0726: include_str!("./error_codes/E0726.md"),
 E0727: include_str!("./error_codes/E0727.md"),
 E0728: include_str!("./error_codes/E0728.md"),
+E0729: include_str!("./error_codes/E0729.md"),
 E0730: include_str!("./error_codes/E0730.md"),
 E0731: include_str!("./error_codes/E0731.md"),
 E0732: include_str!("./error_codes/E0732.md"),
diff --git a/compiler/rustc_error_codes/src/error_codes/E0729.md b/compiler/rustc_error_codes/src/error_codes/E0729.md
new file mode 100644 (file)
index 0000000..3891745
--- /dev/null
@@ -0,0 +1,32 @@
+#### Note: this error code is no longer emitted by the compiler
+
+Support for Non-Lexical Lifetimes (NLL) has been included in the Rust compiler
+since 1.31, and has been enabled on the 2015 edition since 1.36. The new borrow
+checker for NLL uncovered some bugs in the old borrow checker, which in some
+cases allowed unsound code to compile, resulting in memory safety issues.
+
+### What do I do?
+
+Change your code so the warning does no longer trigger. For backwards
+compatibility, this unsound code may still compile (with a warning) right now.
+However, at some point in the future, the compiler will no longer accept this
+code and will throw a hard error.
+
+### Shouldn't you fix the old borrow checker?
+
+The old borrow checker has known soundness issues that are basically impossible
+to fix. The new NLL-based borrow checker is the fix.
+
+### Can I turn these warnings into errors by denying a lint?
+
+No.
+
+### When are these warnings going to turn into errors?
+
+No formal timeline for turning the warnings into errors has been set. See
+[GitHub issue 58781](https://github.com/rust-lang/rust/issues/58781) for more
+information.
+
+### Why do I get this message with code that doesn't involve borrowing?
+
+There are some known bugs that trigger this message.
index f4aebbf227759e586a3ac7ae8c5f65d2d998fbf9..b766f166718151e32b5cd001683082390660fc43 100644 (file)
@@ -29,7 +29,7 @@
 const ERROR_TESTS_PATH: &str = "src/test/ui/error-codes/";
 
 // Error codes that (for some reason) can't have a doctest in their explanation. Error codes are still expected to provide a code example, even if untested.
-const IGNORE_DOCTEST_CHECK: &[&str] = &["E0464", "E0570", "E0601", "E0602", "E0729"];
+const IGNORE_DOCTEST_CHECK: &[&str] = &["E0464", "E0570", "E0601", "E0602"];
 
 // Error codes that don't yet have a UI test. This list will eventually be removed.
 const IGNORE_UI_TEST_CHECK: &[&str] = &[