diff options
| -rw-r--r-- | doc/rust.md | 2 | ||||
| -rw-r--r-- | src/libextra/num/bigint.rs | 15 | ||||
| -rw-r--r-- | src/librustc/middle/borrowck/check_loans.rs | 3 | ||||
| -rw-r--r-- | src/librustc/middle/trans/expr.rs | 11 | ||||
| -rw-r--r-- | src/libstd/rt/io/file.rs | 4 | ||||
| -rw-r--r-- | src/libstd/rt/local.rs | 2 | ||||
| -rw-r--r-- | src/libstd/rt/sched.rs | 4 | ||||
| -rw-r--r-- | src/libstd/rt/uv/uvio.rs | 28 | ||||
| -rw-r--r-- | src/test/bench/core-map.rs | 18 | ||||
| -rw-r--r-- | src/test/bench/core-set.rs | 20 | ||||
| -rw-r--r-- | src/test/run-pass/objects-owned-object-borrowed-method-header.rs | 2 | ||||
| -rw-r--r-- | src/test/run-pass/trait-bounds-in-arc.rs | 2 |
12 files changed, 63 insertions, 48 deletions
diff --git a/doc/rust.md b/doc/rust.md index 7ac0527e47d..08c04c6c888 100644 --- a/doc/rust.md +++ b/doc/rust.md @@ -2230,7 +2230,7 @@ Some examples of call expressions: # fn add(x: int, y: int) -> int { 0 } let x: int = add(1, 2); -let pi = FromStr::from_str::<f32>("3.14"); +let pi: Option<f32> = FromStr::from_str("3.14"); ~~~~ ### Lambda expressions diff --git a/src/libextra/num/bigint.rs b/src/libextra/num/bigint.rs index ed35f2b6179..5fd9690d9b0 100644 --- a/src/libextra/num/bigint.rs +++ b/src/libextra/num/bigint.rs @@ -1169,8 +1169,8 @@ mod biguint_tests { #[test] fn test_shl() { fn check(s: &str, shift: uint, ans: &str) { - let bu = (FromStrRadix::from_str_radix::<BigUint>(s, 16).unwrap() << shift) - .to_str_radix(16); + let opt_biguint: Option<BigUint> = FromStrRadix::from_str_radix(s, 16); + let bu = (opt_biguint.unwrap() << shift).to_str_radix(16); assert_eq!(bu.as_slice(), ans); } @@ -1207,8 +1207,9 @@ mod biguint_tests { #[test] fn test_shr() { fn check(s: &str, shift: uint, ans: &str) { - let bu = (FromStrRadix::from_str_radix::<BigUint>(s, 16).unwrap() >> shift) - .to_str_radix(16); + let opt_biguint: Option<BigUint> = + FromStrRadix::from_str_radix(s, 16); + let bu = (opt_biguint.unwrap() >> shift).to_str_radix(16); assert_eq!(bu.as_slice(), ans); } @@ -2015,7 +2016,7 @@ mod bench { use extra::test::BenchHarness; fn factorial(n: uint) -> BigUint { - let mut f = One::one::<BigUint>(); + let mut f: BigUint = One::one(); for i in iterator::range_inclusive(1, n) { f = f * BigUint::from_uint(i); } @@ -2023,8 +2024,8 @@ mod bench { } fn fib(n: uint) -> BigUint { - let mut f0 = Zero::zero::<BigUint>(); - let mut f1 = One::one::<BigUint>(); + let mut f0: BigUint = Zero::zero(); + let mut f1: BigUint = One::one(); for _ in range(0, n) { let f2 = f0 + f1; f0 = util::replace(&mut f1, f2); diff --git a/src/librustc/middle/borrowck/check_loans.rs b/src/librustc/middle/borrowck/check_loans.rs index b8b1928ae5f..485a0aefe98 100644 --- a/src/librustc/middle/borrowck/check_loans.rs +++ b/src/librustc/middle/borrowck/check_loans.rs @@ -23,7 +23,7 @@ use mc = middle::mem_categorization; use middle::borrowck::*; use middle::moves; use middle::ty; -use syntax::ast::m_mutbl; +use syntax::ast::{m_imm, m_mutbl}; use syntax::ast; use syntax::ast_util; use syntax::codemap::span; @@ -488,7 +488,6 @@ impl<'self> CheckLoanCtxt<'self> { mc::cat_deref(_, _, mc::unsafe_ptr(*)) | mc::cat_static_item(*) | mc::cat_deref(_, _, mc::gc_ptr(_)) | - mc::cat_deref(_, _, mc::region_ptr(m_const, _)) | mc::cat_deref(_, _, mc::region_ptr(m_imm, _)) => { // Aliasability is independent of base cmt match cmt.freely_aliasable() { diff --git a/src/librustc/middle/trans/expr.rs b/src/librustc/middle/trans/expr.rs index 57464fa4cc4..7c81bfbda65 100644 --- a/src/librustc/middle/trans/expr.rs +++ b/src/librustc/middle/trans/expr.rs @@ -824,17 +824,16 @@ fn trans_def_datum_unadjusted(bcx: @mut Block, { let _icx = push_ctxt("trans_def_datum_unadjusted"); - match def { + let fn_data = match def { ast::def_fn(did, _) | ast::def_static_method(did, ast::FromImpl(_), _) => { callee::trans_fn_ref(bcx, did, ref_expr.id) } ast::def_static_method(impl_did, ast::FromTrait(trait_did), _) => { - let fn_data = meth::trans_static_method_callee(bcx, - impl_did, - trait_did, - ref_expr.id); - return fn_data_to_datum(bcx, ref_expr, impl_did, fn_data); + meth::trans_static_method_callee(bcx, + impl_did, + trait_did, + ref_expr.id) } _ => { bcx.tcx().sess.span_bug(ref_expr.span, fmt!( diff --git a/src/libstd/rt/io/file.rs b/src/libstd/rt/io/file.rs index 65db76d5ef7..f4e9c4d7c11 100644 --- a/src/libstd/rt/io/file.rs +++ b/src/libstd/rt/io/file.rs @@ -24,7 +24,7 @@ pub fn open<P: PathLike>(path: &P, access: FileAccess ) -> Option<FileStream> { let open_result = unsafe { - let io = Local::unsafe_borrow::<IoFactoryObject>(); + let io: *mut IoFactoryObject = Local::unsafe_borrow(); (*io).fs_open(path, mode, access) }; match open_result { @@ -43,7 +43,7 @@ pub fn open<P: PathLike>(path: &P, /// by `path`. pub fn unlink<P: PathLike>(path: &P) { let unlink_result = unsafe { - let io = Local::unsafe_borrow::<IoFactoryObject>(); + let io: *mut IoFactoryObject = Local::unsafe_borrow(); (*io).fs_unlink(path) }; match unlink_result { diff --git a/src/libstd/rt/local.rs b/src/libstd/rt/local.rs index 072fb4edf05..d4f31879c00 100644 --- a/src/libstd/rt/local.rs +++ b/src/libstd/rt/local.rs @@ -107,7 +107,7 @@ impl Local for Scheduler { } unsafe fn try_unsafe_borrow() -> Option<*mut Scheduler> { let task_opt: Option<*mut Task> = Local::try_unsafe_borrow(); - match Local::try_unsafe_borrow::<Task>() { + match task_opt { Some(task) => { match (*task).sched { Some(~ref mut sched) => { diff --git a/src/libstd/rt/sched.rs b/src/libstd/rt/sched.rs index 79fac4e8e8d..b393832871d 100644 --- a/src/libstd/rt/sched.rs +++ b/src/libstd/rt/sched.rs @@ -175,7 +175,7 @@ impl Scheduler { sched.run(); // Close the idle callback. - let mut sched = Local::take::<Scheduler>(); + let mut sched: ~Scheduler = Local::take(); sched.idle_callback.get_mut_ref().close(); // Make one go through the loop to run the close callback. sched.run(); @@ -581,7 +581,7 @@ impl Scheduler { // run the cleanup job, as expected by the previously called // swap_contexts function. unsafe { - let task: *mut Task = Local::unsafe_borrow::<Task>(); + let task: *mut Task = Local::unsafe_borrow(); (*task).sched.get_mut_ref().run_cleanup_job(); // Must happen after running the cleanup job (of course). diff --git a/src/libstd/rt/uv/uvio.rs b/src/libstd/rt/uv/uvio.rs index c2053b20983..e620ab274b1 100644 --- a/src/libstd/rt/uv/uvio.rs +++ b/src/libstd/rt/uv/uvio.rs @@ -92,7 +92,7 @@ trait HomingIO { // go home let old_home = Cell::new_empty(); let old_home_ptr = &old_home; - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); do scheduler.deschedule_running_task_and_then |_, task| { // get the old home first do task.wake().map_move |mut task| { @@ -102,11 +102,11 @@ trait HomingIO { } // do IO - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); let a = io_sched(self, scheduler); // unhome home - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); do scheduler.deschedule_running_task_and_then |scheduler, task| { do task.wake().map_move |mut task| { task.give_home(old_home.take()); @@ -442,7 +442,7 @@ impl IoFactory for UvIoFactory { do stream.close { let res = Err(uv_error_to_io_error(status.unwrap())); unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); } } @@ -539,7 +539,7 @@ impl IoFactory for UvIoFactory { IoError>> = &result_cell; let path_cell = Cell::new(path); do task::unkillable { // FIXME(#8674) - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); do scheduler.deschedule_running_task_and_then |_, task| { let task_cell = Cell::new(task); let path = path_cell.take(); @@ -553,12 +553,12 @@ impl IoFactory for UvIoFactory { loop_, fd, true, home) as ~RtioFileStream; let res = Ok(fs); unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); } else { let res = Err(uv_error_to_io_error(err.unwrap())); unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); } }; @@ -573,7 +573,7 @@ impl IoFactory for UvIoFactory { let result_cell_ptr: *Cell<Result<(), IoError>> = &result_cell; let path_cell = Cell::new(path); do task::unkillable { // FIXME(#8674) - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); do scheduler.deschedule_running_task_and_then |_, task| { let task_cell = Cell::new(task); let path = path_cell.take(); @@ -583,7 +583,7 @@ impl IoFactory for UvIoFactory { Some(err) => Err(uv_error_to_io_error(err)) }; unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); }; }; @@ -1154,7 +1154,7 @@ impl UvFileStream { Some(err) => Err(uv_error_to_io_error(err)) }; unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); }; }; @@ -1175,7 +1175,7 @@ impl UvFileStream { Some(err) => Err(uv_error_to_io_error(err)) }; unsafe { (*result_cell_ptr).put_back(res); } - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); }; }; @@ -1208,7 +1208,7 @@ impl Drop for UvFileStream { do scheduler.deschedule_running_task_and_then |_, task| { let task_cell = Cell::new(task); do self_.fd.close(&self.loop_) |_,_| { - let scheduler = Local::take::<Scheduler>(); + let scheduler: ~Scheduler = Local::take(); scheduler.resume_blocked_task_immediately(task_cell.take()); }; }; @@ -1776,7 +1776,7 @@ fn file_test_uvio_full_simple_impl() { use path::Path; use rt::io::{Open, Create, ReadWrite, Read}; unsafe { - let io = Local::unsafe_borrow::<IoFactoryObject>(); + let io: *mut IoFactoryObject = Local::unsafe_borrow(); let write_val = "hello uvio!"; let path = "./tmp/file_test_uvio_full.txt"; { @@ -1810,7 +1810,7 @@ fn uvio_naive_print(input: &str) { use str::StrSlice; unsafe { use libc::{STDOUT_FILENO}; - let io = Local::unsafe_borrow::<IoFactoryObject>(); + let io: *mut IoFactoryObject = Local::unsafe_borrow(); { let mut fd = (*io).fs_from_raw_fd(STDOUT_FILENO, false); let write_buf = input.as_bytes(); diff --git a/src/test/bench/core-map.rs b/src/test/bench/core-map.rs index 6475012e009..2571d601459 100644 --- a/src/test/bench/core-map.rs +++ b/src/test/bench/core-map.rs @@ -121,54 +121,54 @@ fn main() { io::println("\nTreeMap:"); { - let mut map = TreeMap::new::<uint, uint>(); + let mut map: TreeMap<uint,uint> = TreeMap::new(); ascending(&mut map, n_keys); } { - let mut map = TreeMap::new::<uint, uint>(); + let mut map: TreeMap<uint,uint> = TreeMap::new(); descending(&mut map, n_keys); } { io::println(" Random integers:"); - let mut map = TreeMap::new::<uint, uint>(); + let mut map: TreeMap<uint,uint> = TreeMap::new(); vector(&mut map, n_keys, rand); } io::println("\nHashMap:"); { - let mut map = HashMap::new::<uint, uint>(); + let mut map: HashMap<uint,uint> = HashMap::new(); ascending(&mut map, n_keys); } { - let mut map = HashMap::new::<uint, uint>(); + let mut map: HashMap<uint,uint> = HashMap::new(); descending(&mut map, n_keys); } { io::println(" Random integers:"); - let mut map = HashMap::new::<uint, uint>(); + let mut map: HashMap<uint,uint> = HashMap::new(); vector(&mut map, n_keys, rand); } io::println("\nTrieMap:"); { - let mut map = TrieMap::new::<uint>(); + let mut map: TrieMap<uint> = TrieMap::new(); ascending(&mut map, n_keys); } { - let mut map = TrieMap::new::<uint>(); + let mut map: TrieMap<uint> = TrieMap::new(); descending(&mut map, n_keys); } { io::println(" Random integers:"); - let mut map = TrieMap::new::<uint>(); + let mut map: TrieMap<uint> = TrieMap::new(); vector(&mut map, n_keys, rand); } } diff --git a/src/test/bench/core-set.rs b/src/test/bench/core-set.rs index 22622c1cac3..fe77196e2b1 100644 --- a/src/test/bench/core-set.rs +++ b/src/test/bench/core-set.rs @@ -169,16 +169,28 @@ fn main() { { let mut rng = rand::IsaacRng::new_seeded(seed); let mut results = empty_results(); - results.bench_int(&mut rng, num_keys, max, || HashSet::new::<uint>()); - results.bench_str(&mut rng, num_keys, || HashSet::new::<~str>()); + results.bench_int(&mut rng, num_keys, max, || { + let s: HashSet<uint> = HashSet::new(); + s + }); + results.bench_str(&mut rng, num_keys, || { + let s: HashSet<~str> = HashSet::new(); + s + }); write_results("std::hashmap::HashSet", &results); } { let mut rng = rand::IsaacRng::new_seeded(seed); let mut results = empty_results(); - results.bench_int(&mut rng, num_keys, max, || TreeSet::new::<uint>()); - results.bench_str(&mut rng, num_keys, || TreeSet::new::<~str>()); + results.bench_int(&mut rng, num_keys, max, || { + let s: TreeSet<uint> = TreeSet::new(); + s + }); + results.bench_str(&mut rng, num_keys, || { + let s: TreeSet<~str> = TreeSet::new(); + s + }); write_results("extra::treemap::TreeSet", &results); } diff --git a/src/test/run-pass/objects-owned-object-borrowed-method-header.rs b/src/test/run-pass/objects-owned-object-borrowed-method-header.rs index 23c271f53ca..baef20944f7 100644 --- a/src/test/run-pass/objects-owned-object-borrowed-method-header.rs +++ b/src/test/run-pass/objects-owned-object-borrowed-method-header.rs @@ -1,3 +1,5 @@ +// xfail-pretty + // Copyright 2013 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. diff --git a/src/test/run-pass/trait-bounds-in-arc.rs b/src/test/run-pass/trait-bounds-in-arc.rs index 1360b76653c..a4510ef70e1 100644 --- a/src/test/run-pass/trait-bounds-in-arc.rs +++ b/src/test/run-pass/trait-bounds-in-arc.rs @@ -1,3 +1,5 @@ +// xfail-pretty + // Copyright 2013 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. |
