diff options
| author | Wim Looman <git@nemo157.com> | 2023-05-28 13:11:23 +0200 |
|---|---|---|
| committer | Wim Looman <git@nemo157.com> | 2023-05-28 13:11:30 +0200 |
| commit | 8f942532541f571733c38d8c3145845948e4cd44 (patch) | |
| tree | a91673955c03d77692892552d965e8e9b3358c4d /compiler/rustc_error_codes/src | |
| parent | a525c7ddba5997b132efa46515e0ce90c173f480 (diff) | |
| download | rust-8f942532541f571733c38d8c3145845948e4cd44.tar.gz rust-8f942532541f571733c38d8c3145845948e4cd44.zip | |
Add details about `unsafe_op_in_unsafe_fn` to E0133
Diffstat (limited to 'compiler/rustc_error_codes/src')
| -rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0133.md | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0133.md b/compiler/rustc_error_codes/src/error_codes/E0133.md index 1adbcc31356..8ca3f03ce15 100644 --- a/compiler/rustc_error_codes/src/error_codes/E0133.md +++ b/compiler/rustc_error_codes/src/error_codes/E0133.md @@ -1,4 +1,4 @@ -Unsafe code was used outside of an unsafe function or block. +Unsafe code was used outside of an unsafe block. Erroneous code example: @@ -30,4 +30,21 @@ fn main() { See the [unsafe section][unsafe-section] of the Book for more details. +#### Unsafe code in functions + +Unsafe code is currently accepted in unsafe functions, but that is being phased +out in favor of requiring unsafe blocks here too. + +``` +unsafe fn f() { return; } + +unsafe fn g() { + f(); // Is accepted, but no longer recommended + unsafe { f(); } // Recommended way to write this +} +``` + +Linting against this is controlled via the `unsafe_op_in_unsafe_fn` lint, which +is `allow` by default but will be upgraded to `warn` in a future edition. + [unsafe-section]: https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html |
