about summary refs log tree commit diff
path: root/src/tools/miri/tests/pass/static_memory_modification.rs
blob: 1900250bf4f8faf39fb6552cd25a0a34e89eef1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// FIXME(static_mut_refs): Do not allow `static_mut_refs` lint
#![allow(static_mut_refs)]

use std::sync::atomic::{AtomicUsize, Ordering};

static mut X: usize = 5;
static Y: AtomicUsize = AtomicUsize::new(5);

fn main() {
    unsafe {
        X = 6;
        assert_eq!(X, 6);
    }

    Y.store(6, Ordering::Relaxed);
    assert_eq!(Y.load(Ordering::Relaxed), 6);
}