error[E0133]: initializing type with an unsafe field is unsafe and requires unsafe block --> $DIR/unsafe-fields-crate.rs:9:5 | LL | / WithUnsafeField { LL | | LL | | unsafe_field: 0, LL | | safe_field: 0, LL | | } | |_____^ initialization of struct with unsafe field | = note: unsafe fields may carry library invariants error[E0133]: use of unsafe field is unsafe and requires unsafe block --> $DIR/unsafe-fields-crate.rs:43:5 | LL | s.unsafe_field = 2; | ^^^^^^^^^^^^^^ use of unsafe field | = note: unsafe fields may carry library invariants error[E0133]: use of unsafe field is unsafe and requires unsafe block --> $DIR/unsafe-fields-crate.rs:48:5 | LL | s.unsafe_field | ^^^^^^^^^^^^^^ use of unsafe field | = note: unsafe fields may carry library invariants error[E0133]: use of unsafe field is unsafe and requires unsafe block --> $DIR/unsafe-fields-crate.rs:53:6 | LL | &s.unsafe_field | ^^^^^^^^^^^^^^ use of unsafe field | = note: unsafe fields may carry library invariants error[E0133]: use of unsafe field is unsafe and requires unsafe block --> $DIR/unsafe-fields-crate.rs:58:39 | LL | let WithUnsafeField { safe_field, unsafe_field } = s; | ^^^^^^^^^^^^ use of unsafe field | = note: unsafe fields may carry library invariants error: aborting due to 5 previous errors For more information about this error, try `rustc --explain E0133`.