rust/tests/ui/toplevel_ref_arg.rs

30 lines
539 B
Rust
Raw Normal View History

2018-07-28 10:34:52 -05:00
#![warn(clippy::all)]
2015-04-13 12:58:18 -05:00
#![allow(unused)]
2017-02-08 07:58:07 -06:00
fn the_answer(ref mut x: u8) {
2018-12-09 16:26:16 -06:00
*x = 42;
}
fn main() {
2018-12-09 16:26:16 -06:00
let mut x = 0;
the_answer(x);
// Closures should not warn
let y = |ref x| println!("{:?}", x);
y(1u8);
2018-12-09 16:26:16 -06:00
let ref x = 1;
2017-02-08 07:58:07 -06:00
2018-12-09 16:26:16 -06:00
let ref y: (&_, u8) = (&1, 2);
2017-02-08 07:58:07 -06:00
2018-12-09 16:26:16 -06:00
let ref z = 1 + 2;
2017-02-08 07:58:07 -06:00
2018-12-09 16:26:16 -06:00
let ref mut z = 1 + 2;
2017-02-08 07:58:07 -06:00
2019-01-30 19:15:29 -06:00
let (ref x, _) = (1, 2); // ok, not top level
2018-12-09 16:26:16 -06:00
println!("The answer is {}.", x);
// Make sure that allowing the lint works
#[allow(clippy::toplevel_ref_arg)]
let ref mut x = 1_234_543;
}