summaryrefslogtreecommitdiff
path: root/src/test_helpers.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/test_helpers.rs18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/test_helpers.rs b/src/test_helpers.rs
index 8967f3fb..35956ab5 100644
--- a/src/test_helpers.rs
+++ b/src/test_helpers.rs
@@ -1,23 +1,23 @@
macro_rules! droppable {
() => {
+ static COUNT: core::sync::atomic::AtomicI32 = core::sync::atomic::AtomicI32::new(0);
+
#[derive(Eq, Ord, PartialEq, PartialOrd)]
struct Droppable(i32);
impl Droppable {
fn new() -> Self {
- unsafe {
- COUNT += 1;
- Droppable(COUNT)
- }
+ COUNT.fetch_add(1, core::sync::atomic::Ordering::Relaxed);
+ Droppable(Self::count())
+ }
+
+ fn count() -> i32 {
+ COUNT.load(core::sync::atomic::Ordering::Relaxed)
}
}
impl Drop for Droppable {
fn drop(&mut self) {
- unsafe {
- COUNT -= 1;
- }
+ COUNT.fetch_sub(1, core::sync::atomic::Ordering::Relaxed);
}
}
-
- static mut COUNT: i32 = 0;
};
}