diff options
Diffstat (limited to 'vendor/parking_lot-0.11.2/tests/issue_203.rs')
-rw-r--r-- | vendor/parking_lot-0.11.2/tests/issue_203.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/vendor/parking_lot-0.11.2/tests/issue_203.rs b/vendor/parking_lot-0.11.2/tests/issue_203.rs new file mode 100644 index 000000000..a77a95f8a --- /dev/null +++ b/vendor/parking_lot-0.11.2/tests/issue_203.rs @@ -0,0 +1,26 @@ +use parking_lot::RwLock; +use std::thread; + +struct Bar(RwLock<()>); + +impl Drop for Bar { + fn drop(&mut self) { + let _n = self.0.write(); + } +} + +thread_local! { + static B: Bar = Bar(RwLock::new(())); +} + +#[test] +fn main() { + thread::spawn(|| { + B.with(|_| ()); + + let a = RwLock::new(()); + let _a = a.read(); + }) + .join() + .unwrap(); +} |