#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::sync::atomic::{AtomicI8, Ordering}; fn main() { let some_var = AtomicI8::new(5); assert_eq!( some_var.compare_exchange(5, 10, Ordering::Acquire, Ordering::Relaxed), Ok(5) ); assert_eq!(some_var.load(Ordering::Relaxed), 10); assert_eq!( some_var.compare_exchange(6, 12, Ordering::SeqCst, Ordering::Acquire), Err(10) ); assert_eq!(some_var.load(Ordering::Relaxed), 10); }