Skip to content

Commit c341e69

Browse files
committed
strengthen language around "soundness bugs"
1 parent 92dd465 commit c341e69

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

posts/2019-10-28-nll-hard-errors.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,19 @@ improvement.
2929
What is perhaps less well understood is that the new borrow checker
3030
implementation *also* fixed a lot of bugs. In other words, the new
3131
borrow checker did not just accept more programs -- **it also rejected
32-
some programs that never should have been accepted in the first
33-
place!**
32+
some programs that were only accepted in the first place due to memory
33+
unsafety bugs in the old borrow checker!**
3434

3535
[2018]: https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html
3636
[nll]: https://blog.rust-lang.org/2018/12/06/Rust-1.31-and-rust-2018.html#non-lexical-lifetimes
3737
[MIR]: https://blog.rust-lang.org/2016/04/19/MIR.html
3838

3939
### Until recently, those fixed bugs produced warnings, not errors
4040

41-
As part of our commitment to stability, whenever we find bugs that
42-
impact existing code in a major way, we try to "phase in" those
41+
Obviously, we don't want to accept programs that could undermine
42+
Rust's safety guarantees. At the same time, as part of our commitment
43+
to stability, we try to avoid making sudden bug fixes that will affect
44+
a lot of code. Whenever possible, we prefer to "phase in" those
4345
changes gradually. We usually begin with "Future Compatibility
4446
Warnings", for example, before moving those warnings to hard errors
4547
(sometimes a small bit at a time). Since the bug fixes to the borrow

0 commit comments

Comments
 (0)