diff options
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/sync.rs | 44 | ||||
| -rw-r--r-- | src/libstd/uv_ll.rs | 4 |
2 files changed, 28 insertions, 20 deletions
diff --git a/src/libstd/sync.rs b/src/libstd/sync.rs index 21a6153380c..e86ec793188 100644 --- a/src/libstd/sync.rs +++ b/src/libstd/sync.rs @@ -828,18 +828,22 @@ mod tests { let m = ~Mutex(); let m2 = m.clone(); let mut sharedstate = ~0; - let ptr: *int = &*sharedstate; - do task::spawn || { - let sharedstate: &mut int = - unsafe { cast::transmute(ptr) }; - access_shared(sharedstate, m2, 10); - c.send(()); + { + let ptr: *int = &*sharedstate; + do task::spawn || { + let sharedstate: &mut int = + unsafe { cast::transmute(ptr) }; + access_shared(sharedstate, m2, 10); + c.send(()); + } } - access_shared(sharedstate, m, 10); - let _ = p.recv(); + { + access_shared(sharedstate, m, 10); + let _ = p.recv(); - assert!(*sharedstate == 20); + assert!(*sharedstate == 20); + } fn access_shared(sharedstate: &mut int, m: &Mutex, n: uint) { for n.times { @@ -1106,17 +1110,21 @@ mod tests { let (p,c) = comm::stream(); let x2 = (*x).clone(); let mut sharedstate = ~0; - let ptr: *int = &*sharedstate; - do task::spawn || { - let sharedstate: &mut int = - unsafe { cast::transmute(ptr) }; - access_shared(sharedstate, &x2, mode1, 10); - c.send(()); + { + let ptr: *int = &*sharedstate; + do task::spawn || { + let sharedstate: &mut int = + unsafe { cast::transmute(ptr) }; + access_shared(sharedstate, &x2, mode1, 10); + c.send(()); + } } - access_shared(sharedstate, x, mode2, 10); - let _ = p.recv(); + { + access_shared(sharedstate, x, mode2, 10); + let _ = p.recv(); - assert!(*sharedstate == 20); + assert!(*sharedstate == 20); + } fn access_shared(sharedstate: &mut int, x: &RWlock, mode: RWlockMode, n: uint) { diff --git a/src/libstd/uv_ll.rs b/src/libstd/uv_ll.rs index 8e5b3274bbb..8d7a97e2e48 100644 --- a/src/libstd/uv_ll.rs +++ b/src/libstd/uv_ll.rs @@ -1396,9 +1396,9 @@ mod test { // not set the data on the connect_req // until its initialized set_data_for_req(connect_req_ptr as *libc::c_void, - transmute(&client_data)); + &client_data); set_data_for_uv_handle(tcp_handle_ptr as *libc::c_void, - transmute(&client_data)); + &client_data); debug!(~"before run tcp req loop"); run(test_loop); debug!(~"after run tcp req loop"); |
