```rust
let captured_var = 10;
-let closure_no_args = |&:| println!("captured_var={}", captured_var);
+let closure_no_args = || println!("captured_var={}", captured_var);
-let closure_args = |&: arg: i32| -> i32 {
+let closure_args = |arg: i32| -> i32 {
println!("captured_var={}, arg={}", captured_var, arg);
arg // Note lack of semicolon after 'arg'
};
}
}
(Ok(const_int(a)), Ok(const_int(b))) => {
- let is_a_min_value = |&:| {
+ let is_a_min_value = || {
let int_ty = match ty::expr_ty_opt(tcx, e).map(|ty| &ty.sty) {
Some(&ty::ty_int(int_ty)) => int_ty,
_ => return false
scope: region::CodeExtent,
depth: uint)
{
- let origin = |&:| infer::SubregionOrigin::SafeDestructor(span);
+ let origin = || infer::SubregionOrigin::SafeDestructor(span);
let mut walker = ty_root.walk();
let opt_phantom_data_def_id = rcx.tcx().lang_items.phantom_data();
// file descriptor. Otherwise, the first file descriptor opened
// up in the child would be numbered as one of the stdio file
// descriptors, which is likely to wreak havoc.
- let setup = |&: src: Option<AnonPipe>, dst: c_int| {
+ let setup = |src: Option<AnonPipe>, dst: c_int| {
let src = match src {
None => {
let flags = if dst == libc::STDIN_FILENO {
// Similarly to unix, we don't actually leave holes for the stdio file
// descriptors, but rather open up /dev/null equivalents. These
// equivalents are drawn from libuv's windows process spawning.
- let set_fd = |&: fd: &Option<AnonPipe>, slot: &mut HANDLE,
+ let set_fd = |fd: &Option<AnonPipe>, slot: &mut HANDLE,
is_stdin: bool| {
match *fd {
None => {