Skip to content

Commit

Permalink
Rollup merge of rust-lang#22728 - vojtechkral:int-audit-thread-local,…
Browse files Browse the repository at this point in the history
… r=alexcrichton

 Integer audit in `libstd/thread_local/*`, part of rust-lang#22240
  • Loading branch information
Manishearth committed Feb 24, 2015
2 parents 3ca5439 + e5e76e9 commit 9b7c749
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 15 deletions.
18 changes: 9 additions & 9 deletions src/libstd/thread_local/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ pub mod __impl {
/// use std::cell::RefCell;
/// use std::thread;
///
/// thread_local!(static FOO: RefCell<uint> = RefCell::new(1));
/// thread_local!(static FOO: RefCell<u32> = RefCell::new(1));
///
/// FOO.with(|f| {
/// assert_eq!(*f.borrow(), 1);
Expand Down Expand Up @@ -503,7 +503,7 @@ mod imp {
unsafe fn ptr(&'static self) -> Option<*mut T> {
let ptr = self.os.get() as *mut Value<T>;
if !ptr.is_null() {
if ptr as uint == 1 {
if ptr as usize == 1 {
return None
}
return Some(&mut (*ptr).value as *mut T);
Expand Down Expand Up @@ -563,7 +563,7 @@ mod tests {

#[test]
fn smoke_no_dtor() {
thread_local!(static FOO: UnsafeCell<int> = UnsafeCell { value: 1 });
thread_local!(static FOO: UnsafeCell<i32> = UnsafeCell { value: 1 });

FOO.with(|f| unsafe {
assert_eq!(*f.get(), 1);
Expand Down Expand Up @@ -632,7 +632,7 @@ mod tests {
thread_local!(static K2: UnsafeCell<Option<S2>> = UnsafeCell {
value: None
});
static mut HITS: uint = 0;
static mut HITS: u32 = 0;

impl Drop for S1 {
fn drop(&mut self) {
Expand Down Expand Up @@ -723,8 +723,8 @@ mod dynamic_tests {

#[test]
fn smoke() {
fn square(i: int) -> int { i * i }
thread_local!(static FOO: int = square(3));
fn square(i: i32) -> i32 { i * i }
thread_local!(static FOO: i32 = square(3));

FOO.with(|f| {
assert_eq!(*f, 9);
Expand All @@ -733,12 +733,12 @@ mod dynamic_tests {

#[test]
fn hashmap() {
fn map() -> RefCell<HashMap<int, int>> {
fn map() -> RefCell<HashMap<i32, i32>> {
let mut m = HashMap::new();
m.insert(1, 2);
RefCell::new(m)
}
thread_local!(static FOO: RefCell<HashMap<int, int>> = map());
thread_local!(static FOO: RefCell<HashMap<i32, i32>> = map());

FOO.with(|map| {
assert_eq!(map.borrow()[1], 2);
Expand All @@ -747,7 +747,7 @@ mod dynamic_tests {

#[test]
fn refcell_vec() {
thread_local!(static FOO: RefCell<Vec<uint>> = RefCell::new(vec![1, 2, 3]));
thread_local!(static FOO: RefCell<Vec<u32>> = RefCell::new(vec![1, 2, 3]));

FOO.with(|vec| {
assert_eq!(vec.borrow().len(), 3);
Expand Down
12 changes: 6 additions & 6 deletions src/libstd/thread_local/scoped.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
//! # Example
//!
//! ```
//! scoped_thread_local!(static FOO: uint);
//! scoped_thread_local!(static FOO: u32);
//!
//! // Initially each scoped slot is empty.
//! assert!(!FOO.is_set());
Expand Down Expand Up @@ -140,7 +140,7 @@ impl<T> Key<T> {
/// # Example
///
/// ```
/// scoped_thread_local!(static FOO: uint);
/// scoped_thread_local!(static FOO: u32);
///
/// FOO.set(&100, || {
/// let val = FOO.with(|v| *v);
Expand Down Expand Up @@ -192,7 +192,7 @@ impl<T> Key<T> {
/// # Example
///
/// ```no_run
/// scoped_thread_local!(static FOO: uint);
/// scoped_thread_local!(static FOO: u32);
///
/// FOO.with(|slot| {
/// // work with `slot`
Expand Down Expand Up @@ -269,11 +269,11 @@ mod tests {
use cell::Cell;
use prelude::v1::*;

scoped_thread_local!(static FOO: uint);
scoped_thread_local!(static FOO: u32);

#[test]
fn smoke() {
scoped_thread_local!(static BAR: uint);
scoped_thread_local!(static BAR: u32);

assert!(!BAR.is_set());
BAR.set(&1, || {
Expand All @@ -287,7 +287,7 @@ mod tests {

#[test]
fn cell_allowed() {
scoped_thread_local!(static BAR: Cell<uint>);
scoped_thread_local!(static BAR: Cell<u32>);

BAR.set(&Cell::new(1), || {
BAR.with(|slot| {
Expand Down

0 comments on commit 9b7c749

Please sign in to comment.