diff options
| author | bors <bors@rust-lang.org> | 2023-05-29 03:04:06 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-05-29 03:04:06 +0000 |
| commit | dc0943d2eebf139e7e509882b803f77bfd25656d (patch) | |
| tree | f676e20f47d2b60f37c2828f39b2cfbcb29d0fc2 /compiler/rustc_error_codes | |
| parent | f8447b963893b410f1dbce2cd752a898dc3ed8d4 (diff) | |
| parent | e71b3b3cfac1ea515bc3cf2a6495f9261f265f43 (diff) | |
| download | rust-dc0943d2eebf139e7e509882b803f77bfd25656d.tar.gz rust-dc0943d2eebf139e7e509882b803f77bfd25656d.zip | |
Auto merge of #112055 - matthiaskrgr:rollup-y3exx8c, r=matthiaskrgr
Rollup of 5 pull requests Successful merges: - #112029 (Recover upon mistyped error on typo'd `const` in const param def) - #112037 (Add details about `unsafe_op_in_unsafe_fn` to E0133) - #112039 (compiler: update solaris/illumos to enable tsan support.) - #112042 (Migrate GUI colors test to original CSS color format) - #112045 (Followup to #111973) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_error_codes')
| -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 |
