#![allow(dead_code, deprecated, unused_variables, unused_mut)] #![allow(internal_features)] #![feature(custom_mir, core_intrinsics)] use core::intrinsics::mir::*; #[custom_mir(dialect = "built")] fn unwrap_deref(opt: Option<&i32>) -> i32 { mir! { { RET = * Field::<& i32 > (Variant(opt, 1), 0); Return() } } } #[custom_mir(dialect = "built")] fn set(opt: &mut Option) { mir! { { place!(Field(Variant(* opt, 1), 0)) = 5; Return() } } } fn main() {}