diff --git a/src/libcore/vec.rs b/src/libcore/vec.rs index 494470e32e4..a2e7a20bdf2 100644 --- a/src/libcore/vec.rs +++ b/src/libcore/vec.rs @@ -385,7 +385,6 @@ fn shift(&v: [T]) -> T { let mut r <- *vv; for uint::range(1u, ln) {|i| - // FIXME (#2703): this isn't legal, per se... let r <- *ptr::offset(vv, i); push(v, r); } diff --git a/src/rt/rust_builtin.cpp b/src/rt/rust_builtin.cpp index cab1b6b427c..ad729494c45 100644 --- a/src/rt/rust_builtin.cpp +++ b/src/rt/rust_builtin.cpp @@ -891,9 +891,7 @@ rust_unlock_cond_lock(rust_cond_lock *lock) { extern "C" void rust_wait_cond_lock(rust_cond_lock *lock) { rust_task *task = rust_get_current_task(); -#ifdef DEBUG_LOCKS - assert(lock->lock.lock_held_by_current_thread()); -#endif + lock->lock.must_have_lock(); assert(NULL == lock->waiting); lock->waiting = task; task->block(lock, "waiting for signal"); @@ -905,9 +903,7 @@ rust_wait_cond_lock(rust_cond_lock *lock) { extern "C" bool rust_signal_cond_lock(rust_cond_lock *lock) { -#ifdef DEBUG_LOCKS - assert(lock->lock.lock_held_by_current_thread()); -#endif + lock->lock.must_have_lock(); if(NULL == lock->waiting) { return false; } diff --git a/src/rustc/middle/trans/base.rs b/src/rustc/middle/trans/base.rs index d202ba7a123..8d8009ceece 100644 --- a/src/rustc/middle/trans/base.rs +++ b/src/rustc/middle/trans/base.rs @@ -1797,7 +1797,6 @@ fn trans_assign_op(bcx: block, ex: @ast::expr, op: ast::binop, arg_exprs([src]), save_in(target)); ret move_val(bcx, DROP_EXISTING, lhs_res.val, - // FIXME (#2704): should kind be owned? {bcx: bcx, val: target, kind: owned}, dty); } diff --git a/src/test/bench/task-perf-word-count-generic.rs b/src/test/bench/task-perf-word-count-generic.rs index f43f27f425f..c4e51902628 100644 --- a/src/test/bench/task-perf-word-count-generic.rs +++ b/src/test/bench/task-perf-word-count-generic.rs @@ -77,7 +77,6 @@ mod map_reduce { type putter = fn(K, V); - // FIXME: the first K1 parameter should probably be a - (#2599) type mapper = fn~(K1, putter); type getter = fn() -> option; diff --git a/src/test/run-pass/issue-506.rs b/src/test/run-pass/issue-506.rs index 6fc5b5ea6eb..458a0b12698 100644 --- a/src/test/run-pass/issue-506.rs +++ b/src/test/run-pass/issue-506.rs @@ -1,9 +1,3 @@ -// xfail-test -// FIXME: This test is no longer testing what it was intended to. It should -// be testing spawning of a native function, but is actually testing -// spawning some other function, then executing a native function. -// #2602 - /* A reduced test case for Issue #506, provided by Rob Arnold. */ @@ -13,9 +7,7 @@ import task; #[abi = "cdecl"] native mod rustrt { - fn task_yield(); + fn rust_task_allow_kill(); } -fn yield_wrap(&&_arg: ()) { rustrt::task_yield(); } - -fn main() { task::spawn((), yield_wrap); } +fn main() { task::spawn(rustrt::rust_task_allow_kill); } diff --git a/src/test/run-pass/task-comm-16.rs b/src/test/run-pass/task-comm-16.rs index 40936ce3a06..d250b311ccc 100644 --- a/src/test/run-pass/task-comm-16.rs +++ b/src/test/run-pass/task-comm-16.rs @@ -52,8 +52,6 @@ fn test_tag() { send(ch, tag1); send(ch, tag2(10)); send(ch, tag3(10, 11u8, 'A')); - // FIXME: Do port semantics really guarantee these happen in order? - // (#2605) let mut t1: t; t1 = recv(po); assert (t1 == tag1);