[INFO] crate esprit 0.0.5 is already in cache [INFO] extracting crate esprit 0.0.5 into work/ex/clippy-test-run/sources/stable/reg/esprit/0.0.5 [INFO] extracting crate esprit 0.0.5 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/esprit/0.0.5 [INFO] validating manifest of esprit-0.0.5 on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of esprit-0.0.5 on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing esprit-0.0.5 [INFO] removed path dependency easter from esprit-0.0.5 [INFO] removed path dependency estree from esprit-0.0.5 [INFO] removed path dependency joker from esprit-0.0.5 [INFO] removed path dependency unjson from esprit-0.0.5 [INFO] finished frobbing esprit-0.0.5 [INFO] frobbed toml for esprit-0.0.5 written to work/ex/clippy-test-run/sources/stable/reg/esprit/0.0.5/Cargo.toml [INFO] started frobbing esprit-0.0.5 [INFO] removed path dependency easter from esprit-0.0.5 [INFO] removed path dependency estree from esprit-0.0.5 [INFO] removed path dependency joker from esprit-0.0.5 [INFO] removed path dependency unjson from esprit-0.0.5 [INFO] finished frobbing esprit-0.0.5 [INFO] frobbed toml for esprit-0.0.5 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/esprit/0.0.5/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting esprit-0.0.5 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-2/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/esprit/0.0.5:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 02bf1c867267f9dc38af1373fbcec3546cbf7f3d9ccce32599121f338dd818d2 [INFO] running `"docker" "start" "-a" "02bf1c867267f9dc38af1373fbcec3546cbf7f3d9ccce32599121f338dd818d2"` [INFO] [stderr] Compiling esprit v0.0.5 (/opt/crater/workdir) [INFO] [stderr] Checking unjson v0.0.5 [INFO] [stderr] Checking joker v0.0.5 [INFO] [stderr] Checking easter v0.0.5 [INFO] [stderr] Checking estree v0.0.5 [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/track.rs:43:45 [INFO] [stderr] | [INFO] [stderr] 43 | *value.tracking_mut() = Some(Span { start: start, end: end }); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `start` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/track.rs:43:59 [INFO] [stderr] | [INFO] [stderr] 43 | *value.tracking_mut() = Some(Span { start: start, end: end }); [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:57:18 [INFO] [stderr] | [INFO] [stderr] 57 | Parser { lexer: lexer, shared_cx: cx, parser_cx: context::Context::new() } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `lexer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:104:41 [INFO] [stderr] | [INFO] [stderr] 104 | Ok(Params { location: None, list: list }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:38 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:46 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:62 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:263:25 [INFO] [stderr] | [INFO] [stderr] 263 | name: name [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:266:51 [INFO] [stderr] | [INFO] [stderr] 266 | Ok(Id { location: Some(location), name: name }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:269:17 [INFO] [stderr] | [INFO] [stderr] 269 | location: location, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:270:17 [INFO] [stderr] | [INFO] [stderr] 270 | newline: newline, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `newline` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:280:61 [INFO] [stderr] | [INFO] [stderr] 280 | Ok(Some(Id { location: Some(next.location), name: name })) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:610:57 [INFO] [stderr] | [INFO] [stderr] 610 | Ok(Case { location: None, test: Some(test), body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:636:51 [INFO] [stderr] | [INFO] [stderr] 636 | Ok(Case { location: None, test: None, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:758:48 [INFO] [stderr] | [INFO] [stderr] 758 | Ok(Catch { location: None, param: param, body: body }) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `param` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:758:62 [INFO] [stderr] | [INFO] [stderr] 758 | Ok(Catch { location: None, param: param, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:889:13 [INFO] [stderr] | [INFO] [stderr] 889 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:933:25 [INFO] [stderr] | [INFO] [stderr] 933 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:962:25 [INFO] [stderr] | [INFO] [stderr] 962 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1071:53 [INFO] [stderr] | [INFO] [stderr] 1071 | return Ok(Arguments { args: Vec::new(), end: end }); [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1081:24 [INFO] [stderr] | [INFO] [stderr] 1081 | Ok(Arguments { args: args, end: end }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1081:36 [INFO] [stderr] | [INFO] [stderr] 1081 | Ok(Arguments { args: args, end: end }) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1255:54 [INFO] [stderr] | [INFO] [stderr] 1255 | Ok(Some(Op { location: Some(token.location), tag: tag })) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1403:25 [INFO] [stderr] | [INFO] [stderr] 1403 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1413:21 [INFO] [stderr] | [INFO] [stderr] 1413 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1419:21 [INFO] [stderr] | [INFO] [stderr] 1419 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1469:25 [INFO] [stderr] | [INFO] [stderr] 1469 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1480:21 [INFO] [stderr] | [INFO] [stderr] 1480 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/stack.rs:132:34 [INFO] [stderr] | [INFO] [stderr] 132 | self.frames.push(Frame { left: left, op: op }); [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/stack.rs:132:46 [INFO] [stderr] | [INFO] [stderr] 132 | self.frames.push(Frame { left: left, op: op }); [INFO] [stderr] | ^^^^^^ help: replace it with: `op` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/track.rs:43:45 [INFO] [stderr] | [INFO] [stderr] 43 | *value.tracking_mut() = Some(Span { start: start, end: end }); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `start` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/track.rs:43:59 [INFO] [stderr] | [INFO] [stderr] 43 | *value.tracking_mut() = Some(Span { start: start, end: end }); [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:57:18 [INFO] [stderr] | [INFO] [stderr] 57 | Parser { lexer: lexer, shared_cx: cx, parser_cx: context::Context::new() } [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `lexer` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:104:41 [INFO] [stderr] | [INFO] [stderr] 104 | Ok(Params { location: None, list: list }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `list` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:38 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^ help: replace it with: `id` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:46 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `params` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:149:62 [INFO] [stderr] | [INFO] [stderr] 149 | Ok(Fun { location: None, id: id, params: params, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:263:25 [INFO] [stderr] | [INFO] [stderr] 263 | name: name [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:266:51 [INFO] [stderr] | [INFO] [stderr] 266 | Ok(Id { location: Some(location), name: name }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:269:17 [INFO] [stderr] | [INFO] [stderr] 269 | location: location, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `location` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:270:17 [INFO] [stderr] | [INFO] [stderr] 270 | newline: newline, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `newline` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:280:61 [INFO] [stderr] | [INFO] [stderr] 280 | Ok(Some(Id { location: Some(next.location), name: name })) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `name` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:610:57 [INFO] [stderr] | [INFO] [stderr] 610 | Ok(Case { location: None, test: Some(test), body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:636:51 [INFO] [stderr] | [INFO] [stderr] 636 | Ok(Case { location: None, test: None, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:758:48 [INFO] [stderr] | [INFO] [stderr] 758 | Ok(Catch { location: None, param: param, body: body }) [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `param` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:758:62 [INFO] [stderr] | [INFO] [stderr] 758 | Ok(Catch { location: None, param: param, body: body }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `body` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:889:13 [INFO] [stderr] | [INFO] [stderr] 889 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:933:25 [INFO] [stderr] | [INFO] [stderr] 933 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:962:25 [INFO] [stderr] | [INFO] [stderr] 962 | key: key, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `key` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1071:53 [INFO] [stderr] | [INFO] [stderr] 1071 | return Ok(Arguments { args: Vec::new(), end: end }); [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1081:24 [INFO] [stderr] | [INFO] [stderr] 1081 | Ok(Arguments { args: args, end: end }) [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `args` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1081:36 [INFO] [stderr] | [INFO] [stderr] 1081 | Ok(Arguments { args: args, end: end }) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `end` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/parser.rs:1255:54 [INFO] [stderr] | [INFO] [stderr] 1255 | Ok(Some(Op { location: Some(token.location), tag: tag })) [INFO] [stderr] | ^^^^^^^^ help: replace it with: `tag` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1403:25 [INFO] [stderr] | [INFO] [stderr] 1403 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::println_empty_string)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1413:21 [INFO] [stderr] | [INFO] [stderr] 1413 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1419:21 [INFO] [stderr] | [INFO] [stderr] 1419 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1469:25 [INFO] [stderr] | [INFO] [stderr] 1469 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: using `println!("")` [INFO] [stderr] --> src/parser.rs:1480:21 [INFO] [stderr] | [INFO] [stderr] 1480 | println!(""); [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `println!()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/stack.rs:132:34 [INFO] [stderr] | [INFO] [stderr] 132 | self.frames.push(Frame { left: left, op: op }); [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `left` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/stack.rs:132:46 [INFO] [stderr] | [INFO] [stderr] 132 | self.frames.push(Frame { left: left, op: op }); [INFO] [stderr] | ^^^^^^ help: replace it with: `op` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: patterns aren't allowed in methods without bodies [INFO] [stderr] --> src/context.rs:12:34 [INFO] [stderr] | [INFO] [stderr] 12 | fn with_labels(&mut self, mut labels: Vec, label_type: LabelType, op: F) -> Result [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(patterns_in_fns_without_body)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #35203 [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:364:67 [INFO] [stderr] | [INFO] [stderr] 364 | TokenData::Reserved(Reserved::Const) => { return Err(Error::UnsupportedFeature("const")); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnsupportedFeature("const"))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:944:28 [INFO] [stderr] | [INFO] [stderr] 944 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:973:28 [INFO] [stderr] | [INFO] [stderr] 973 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:984:28 [INFO] [stderr] | [INFO] [stderr] 984 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: patterns aren't allowed in methods without bodies [INFO] [stderr] --> src/context.rs:12:34 [INFO] [stderr] | [INFO] [stderr] 12 | fn with_labels(&mut self, mut labels: Vec, label_type: LabelType, op: F) -> Result [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(patterns_in_fns_without_body)] on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #35203 [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:364:67 [INFO] [stderr] | [INFO] [stderr] 364 | TokenData::Reserved(Reserved::Const) => { return Err(Error::UnsupportedFeature("const")); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnsupportedFeature("const"))` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:944:28 [INFO] [stderr] | [INFO] [stderr] 944 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:973:28 [INFO] [stderr] | [INFO] [stderr] 973 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser.rs:984:28 [INFO] [stderr] | [INFO] [stderr] 984 | _ => { return Err(Error::UnexpectedToken(try!(self.read()))); } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(Error::UnexpectedToken(try!(self.read())))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/atom.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | / match self { [INFO] [stderr] 12 | | &Name::Atom(ref atom) => atom.is_reserved(mode), [INFO] [stderr] 13 | | _ => false [INFO] [stderr] 14 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 11 | match *self { [INFO] [stderr] 12 | Name::Atom(ref atom) => atom.is_reserved(mode), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/track.rs:10:43 [INFO] [stderr] | [INFO] [stderr] 10 | fn vec_span(&self, v: &Vec) -> Option; [INFO] [stderr] | ^^^^^^^ help: change this to: `&[T]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/track.rs:74:9 [INFO] [stderr] | [INFO] [stderr] 74 | / match try!(parser.peek()) { [INFO] [stderr] 75 | | &Token { value: TokenData::Semi, location, .. } => { [INFO] [stderr] 76 | | parser.reread(TokenData::Semi); [INFO] [stderr] 77 | | let mut result = cons(Semi::Explicit(Some(location.start))); [INFO] [stderr] ... | [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 75 | Token { value: TokenData::Semi, location, .. } => { [INFO] [stderr] 76 | parser.reread(TokenData::Semi); [INFO] [stderr] 77 | let mut result = cons(Semi::Explicit(Some(location.start))); [INFO] [stderr] 78 | *result.tracking_mut() = Some(Span { start: self.start, end: parser.posn() }); [INFO] [stderr] 79 | Ok(result) [INFO] [stderr] 80 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: in an 'if' condition, avoid complex blocks or closures with blocks; instead, move the block or closure higher and bind it with a 'let' [INFO] [stderr] --> src/parser.rs:855:12 [INFO] [stderr] | [INFO] [stderr] 855 | if { let t = try!(self.peek()); t.value == TokenData::Comma || t.value == TokenData::RBrack } { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::block_in_if_condition_stmt)] on by default [INFO] [stderr] = help: try [INFO] [stderr] let res = { let t = try!(self.peek()); t.value == TokenData::Comma || t.value == TokenData::RBrack }; [INFO] [stderr] if res { [INFO] [stderr] return Ok(None); [INFO] [stderr] } ... [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#block_in_if_condition_stmt [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser.rs:1156:12 [INFO] [stderr] | [INFO] [stderr] 1156 | if news.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!news.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser.rs:1162:20 [INFO] [stderr] | [INFO] [stderr] 1162 | if news.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!news.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/expr.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | Brack(Expr, Token), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] --> src/expr.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | Brack(Expr, Token), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stack.rs:136:15 [INFO] [stderr] | [INFO] [stderr] 136 | while self.frames.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.frames.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/atom.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | / match self { [INFO] [stderr] 12 | | &Name::Atom(ref atom) => atom.is_reserved(mode), [INFO] [stderr] 13 | | _ => false [INFO] [stderr] 14 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_ref_pats)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 11 | match *self { [INFO] [stderr] 12 | Name::Atom(ref atom) => atom.is_reserved(mode), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. [INFO] [stderr] --> src/track.rs:10:43 [INFO] [stderr] | [INFO] [stderr] 10 | fn vec_span(&self, v: &Vec) -> Option; [INFO] [stderr] | ^^^^^^^ help: change this to: `&[T]` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::ptr_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/track.rs:74:9 [INFO] [stderr] | [INFO] [stderr] 74 | / match try!(parser.peek()) { [INFO] [stderr] 75 | | &Token { value: TokenData::Semi, location, .. } => { [INFO] [stderr] 76 | | parser.reread(TokenData::Semi); [INFO] [stderr] 77 | | let mut result = cons(Semi::Explicit(Some(location.start))); [INFO] [stderr] ... | [INFO] [stderr] 95 | | } [INFO] [stderr] 96 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 75 | Token { value: TokenData::Semi, location, .. } => { [INFO] [stderr] 76 | parser.reread(TokenData::Semi); [INFO] [stderr] 77 | let mut result = cons(Semi::Explicit(Some(location.start))); [INFO] [stderr] 78 | *result.tracking_mut() = Some(Span { start: self.start, end: parser.posn() }); [INFO] [stderr] 79 | Ok(result) [INFO] [stderr] 80 | } [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: in an 'if' condition, avoid complex blocks or closures with blocks; instead, move the block or closure higher and bind it with a 'let' [INFO] [stderr] --> src/parser.rs:855:12 [INFO] [stderr] | [INFO] [stderr] 855 | if { let t = try!(self.peek()); t.value == TokenData::Comma || t.value == TokenData::RBrack } { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::block_in_if_condition_stmt)] on by default [INFO] [stderr] = help: try [INFO] [stderr] let res = { let t = try!(self.peek()); t.value == TokenData::Comma || t.value == TokenData::RBrack }; [INFO] [stderr] if res { [INFO] [stderr] return Ok(None); [INFO] [stderr] } ... [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#block_in_if_condition_stmt [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser.rs:1156:12 [INFO] [stderr] | [INFO] [stderr] 1156 | if news.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!news.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser.rs:1162:20 [INFO] [stderr] | [INFO] [stderr] 1162 | if news.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!news.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: you don't need to add `&` to all patterns [INFO] [stderr] --> src/parser.rs:1495:9 [INFO] [stderr] | [INFO] [stderr] 1495 | / match ast.body.first().unwrap() { [INFO] [stderr] 1496 | | &StmtListItem::Stmt(Stmt::Expr(_, Expr::Assign(_, _, Patt::Simple(AssignTarget::Id(ref id)), _), _)) => { [INFO] [stderr] 1497 | | assert!(id.name.as_ref() == "foobar"); [INFO] [stderr] 1498 | | } [INFO] [stderr] 1499 | | _ => { panic!("unexpected AST structure"); } [INFO] [stderr] 1500 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_ref_pats [INFO] [stderr] help: instead of prefixing all patterns with `&`, you can dereference the expression [INFO] [stderr] | [INFO] [stderr] 1495 | match *ast.body.first().unwrap() { [INFO] [stderr] 1496 | StmtListItem::Stmt(Stmt::Expr(_, Expr::Assign(_, _, Patt::Simple(AssignTarget::Id(ref id)), _), _)) => { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: large size difference between variants [INFO] [stderr] --> src/expr.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | Brack(Expr, Token), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::large_enum_variant)] on by default [INFO] [stderr] help: consider boxing the large fields to reduce the total size of the enum [INFO] [stderr] --> src/expr.rs:19:5 [INFO] [stderr] | [INFO] [stderr] 19 | Brack(Expr, Token), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stack.rs:136:15 [INFO] [stderr] | [INFO] [stderr] 136 | while self.frames.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!self.frames.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8.71s [INFO] running `"docker" "inspect" "02bf1c867267f9dc38af1373fbcec3546cbf7f3d9ccce32599121f338dd818d2"` [INFO] running `"docker" "rm" "-f" "02bf1c867267f9dc38af1373fbcec3546cbf7f3d9ccce32599121f338dd818d2"` [INFO] [stdout] 02bf1c867267f9dc38af1373fbcec3546cbf7f3d9ccce32599121f338dd818d2