mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-03 04:04:06 +00:00
62 lines
1.3 KiB
Rust
62 lines
1.3 KiB
Rust
// compile-flags: --error-format json
|
|
// run-rustfix
|
|
|
|
// The output for humans should just highlight the whole span without showing
|
|
// the suggested replacement, but we also want to test that suggested
|
|
// replacement only removes one set of parentheses, rather than naïvely
|
|
// stripping away any starting or ending parenthesis characters—hence this
|
|
// test of the JSON error format.
|
|
|
|
#![deny(unused_parens)]
|
|
#![allow(unreachable_code)]
|
|
|
|
fn main() {
|
|
|
|
let _b = false;
|
|
|
|
if _b { //~ ERROR unnecessary parentheses
|
|
println!("hello");
|
|
}
|
|
|
|
f();
|
|
|
|
}
|
|
|
|
fn f() -> bool {
|
|
let c = false;
|
|
|
|
if c { //~ ERROR unnecessary parentheses
|
|
println!("next");
|
|
}
|
|
|
|
if c { //~ ERROR unnecessary parentheses
|
|
println!("prev");
|
|
}
|
|
|
|
while false && true {
|
|
if c { //~ ERROR unnecessary parentheses
|
|
println!("norm");
|
|
}
|
|
|
|
}
|
|
|
|
while true && false { //~ ERROR unnecessary parentheses
|
|
for _ in 0 .. 3 { //~ ERROR unnecessary parentheses
|
|
println!("e~")
|
|
}
|
|
}
|
|
|
|
for _ in 0 .. 3 { //~ ERROR unnecessary parentheses
|
|
while true && false { //~ ERROR unnecessary parentheses
|
|
println!("e~")
|
|
}
|
|
}
|
|
|
|
|
|
loop {
|
|
if (break { return true }) {
|
|
}
|
|
}
|
|
false
|
|
}
|