type Holder {
    value: ref<i32>,
    fn store(self: mutref<Self>, next: ref<i32>) -> Void {
        self.value = next
    }
}

pub fn main() -> Void {
    let old: i32 = 1
    let next: i32 = 2
    var holder: Holder = Holder { value: &old }
    holder.store(&next)
}
