error[E0492]: statics cannot refer to interior mutable data --> $DIR/refs-to-cell-in-final.rs:13:54 | LL | static RAW_SYNC_S: SyncPtr> = SyncPtr { x: &Cell::new(42) }; | ^^^^^^^^^^^^^^ this borrow of an interior mutable value may end up in the final value | = help: to fix this, the value can be extracted to a separate `static` item and then referenced error[E0492]: constants cannot refer to interior mutable data --> $DIR/refs-to-cell-in-final.rs:15:53 | LL | const RAW_SYNC_C: SyncPtr> = SyncPtr { x: &Cell::new(42) }; | ^^^^^^^^^^^^^^ this borrow of an interior mutable value may end up in the final value error[E0492]: constants cannot refer to interior mutable data --> $DIR/refs-to-cell-in-final.rs:41:57 | LL | const INTERIOR_MUT_VARIANT: &Option> = &{ | _________________________________________________________^ LL | | LL | | let mut x = None; LL | | assert!(x.is_none()); LL | | x = Some(UnsafeCell::new(false)); LL | | x LL | | }; | |_^ this borrow of an interior mutable value may end up in the final value error: aborting due to 3 previous errors For more information about this error, try `rustc --explain E0492`.