Error code E0133
Unsafe code was used outside of an unsafe function or block.
Erroneous code example:
unsafe fn f() { return; } // This is the unsafe code
fn main() {
f(); // error: call to unsafe function requires unsafe function or block
}
ⓘ
Using unsafe functionality is potentially dangerous and disallowed by safety checks. Examples:
- Dereferencing raw pointers
- Calling functions via FFI
- Calling functions marked unsafe
These safety checks can be relaxed for a section of the code by wrapping the
unsafe instructions with an unsafe
block. For instance:
unsafe fn f() { return; }
fn main() {
unsafe { f(); } // ok!
}
See the unsafe section of the Book for more details.