[INFO] crate proc-macro2 0.4.24 is already in cache [INFO] extracting crate proc-macro2 0.4.24 into work/ex/clippy-test-run/sources/stable/reg/proc-macro2/0.4.24 [INFO] extracting crate proc-macro2 0.4.24 into work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/proc-macro2/0.4.24 [INFO] validating manifest of proc-macro2-0.4.24 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 proc-macro2-0.4.24 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 proc-macro2-0.4.24 [INFO] finished frobbing proc-macro2-0.4.24 [INFO] frobbed toml for proc-macro2-0.4.24 written to work/ex/clippy-test-run/sources/stable/reg/proc-macro2/0.4.24/Cargo.toml [INFO] started frobbing proc-macro2-0.4.24 [INFO] finished frobbing proc-macro2-0.4.24 [INFO] frobbed toml for proc-macro2-0.4.24 written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/reg/proc-macro2/0.4.24/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 proc-macro2-0.4.24 against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/reg/proc-macro2/0.4.24:/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] 1a0e0c9ed841247b5cca5fca3fd996df127e0a73630cccc235172426d1caa27e [INFO] running `"docker" "start" "-a" "1a0e0c9ed841247b5cca5fca3fd996df127e0a73630cccc235172426d1caa27e"` [INFO] [stderr] Compiling proc-macro2 v0.4.24 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/stable.rs:305:13 [INFO] [stderr] | [INFO] [stderr] 305 | lo: lo, [INFO] [stderr] | ^^^^^^ help: replace it with: `lo` [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/stable.rs:311:13 [INFO] [stderr] | [INFO] [stderr] 311 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [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/stable.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | lines: lines, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `lines` [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/stable.rs:427:13 [INFO] [stderr] | [INFO] [stderr] 427 | delimiter: delimiter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `delimiter` [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/stable.rs:428:13 [INFO] [stderr] | [INFO] [stderr] 428 | stream: stream, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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/stable.rs:499:13 [INFO] [stderr] | [INFO] [stderr] 499 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [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/stable.rs:500:13 [INFO] [stderr] | [INFO] [stderr] 500 | raw: raw, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `raw` [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/stable.rs:643:13 [INFO] [stderr] | [INFO] [stderr] 643 | text: text, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `text` [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/stable.rs:803:43 [INFO] [stderr] | [INFO] [stderr] 803 | let span = ::Span::_new_stable(Span { lo: lo, hi: hi }); [INFO] [stderr] | ^^^^^^ help: replace it with: `lo` [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/stable.rs:803:51 [INFO] [stderr] | [INFO] [stderr] 803 | let span = ::Span::_new_stable(Span { lo: lo, hi: hi }); [INFO] [stderr] | ^^^^^^ help: replace it with: `hi` [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/lib.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:230:13 [INFO] [stderr] | [INFO] [stderr] 230 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | line: line, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `line` [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/lib.rs:359:13 [INFO] [stderr] | [INFO] [stderr] 359 | column: column, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `column` [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/lib.rs:370:13 [INFO] [stderr] | [INFO] [stderr] 370 | line: line, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `line` [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/lib.rs:371:13 [INFO] [stderr] | [INFO] [stderr] 371 | column: column, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `column` [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/lib.rs:531:13 [INFO] [stderr] | [INFO] [stderr] 531 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:658:13 [INFO] [stderr] | [INFO] [stderr] 658 | 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/lib.rs:659:13 [INFO] [stderr] | [INFO] [stderr] 659 | spacing: spacing, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `spacing` [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/lib.rs:789:13 [INFO] [stderr] | [INFO] [stderr] 789 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:952:13 [INFO] [stderr] | [INFO] [stderr] 952 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/stable.rs:305:13 [INFO] [stderr] | [INFO] [stderr] 305 | lo: lo, [INFO] [stderr] | ^^^^^^ help: replace it with: `lo` [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/stable.rs:311:13 [INFO] [stderr] | [INFO] [stderr] 311 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [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/stable.rs:312:13 [INFO] [stderr] | [INFO] [stderr] 312 | lines: lines, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `lines` [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/stable.rs:427:13 [INFO] [stderr] | [INFO] [stderr] 427 | delimiter: delimiter, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: replace it with: `delimiter` [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/stable.rs:428:13 [INFO] [stderr] | [INFO] [stderr] 428 | stream: stream, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `stream` [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/stable.rs:499:13 [INFO] [stderr] | [INFO] [stderr] 499 | span: span, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `span` [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/stable.rs:500:13 [INFO] [stderr] | [INFO] [stderr] 500 | raw: raw, [INFO] [stderr] | ^^^^^^^^ help: replace it with: `raw` [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/stable.rs:643:13 [INFO] [stderr] | [INFO] [stderr] 643 | text: text, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `text` [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/stable.rs:803:43 [INFO] [stderr] | [INFO] [stderr] 803 | let span = ::Span::_new_stable(Span { lo: lo, hi: hi }); [INFO] [stderr] | ^^^^^^ help: replace it with: `lo` [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/stable.rs:803:51 [INFO] [stderr] | [INFO] [stderr] 803 | let span = ::Span::_new_stable(Span { lo: lo, hi: hi }); [INFO] [stderr] | ^^^^^^ help: replace it with: `hi` [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/lib.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:230:13 [INFO] [stderr] | [INFO] [stderr] 230 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | line: line, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `line` [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/lib.rs:359:13 [INFO] [stderr] | [INFO] [stderr] 359 | column: column, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `column` [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/lib.rs:370:13 [INFO] [stderr] | [INFO] [stderr] 370 | line: line, [INFO] [stderr] | ^^^^^^^^^^ help: replace it with: `line` [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/lib.rs:371:13 [INFO] [stderr] | [INFO] [stderr] 371 | column: column, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: replace it with: `column` [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/lib.rs:531:13 [INFO] [stderr] | [INFO] [stderr] 531 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:658:13 [INFO] [stderr] | [INFO] [stderr] 658 | 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/lib.rs:659:13 [INFO] [stderr] | [INFO] [stderr] 659 | spacing: spacing, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace it with: `spacing` [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/lib.rs:789:13 [INFO] [stderr] | [INFO] [stderr] 789 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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/lib.rs:952:13 [INFO] [stderr] | [INFO] [stderr] 952 | inner: inner, [INFO] [stderr] | ^^^^^^^^^^^^ help: replace it with: `inner` [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: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/stable.rs:791:12 [INFO] [stderr] | [INFO] [stderr] 791 | Ok((a, ((b, ::Span::_new_stable(Span {}))))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: Consider removing unnecessary double parentheses [INFO] [stderr] --> src/stable.rs:791:12 [INFO] [stderr] | [INFO] [stderr] 791 | Ok((a, ((b, ::Span::_new_stable(Span {}))))) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::double_parens)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_parens [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `stable::TokenStream` [INFO] [stderr] --> src/stable.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | / pub fn new() -> TokenStream { [INFO] [stderr] 30 | | TokenStream { inner: Vec::new() } [INFO] [stderr] 31 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stable.rs:66:20 [INFO] [stderr] | [INFO] [stderr] 66 | if skip_whitespace(input).len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!skip_whitespace(input).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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/stable.rs:351:24 [INFO] [stderr] | [INFO] [stderr] 351 | pub fn resolved_at(&self, _other: Span) -> Span { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/stable.rs:358:23 [INFO] [stderr] | [INFO] [stderr] 358 | pub fn located_at(&self, other: Span) -> Span { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/stable.rs:691:24 [INFO] [stderr] | [INFO] [stderr] 691 | if !s.contains(".") { [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/stable.rs:699:24 [INFO] [stderr] | [INFO] [stderr] 699 | if !s.contains(".") { [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: some ranges overlap [INFO] [stderr] --> src/stable.rs:729:17 [INFO] [stderr] | [INFO] [stderr] 729 | b'\x20'...b'\x7E' => escaped.push(*b as char), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_overlapping_arm)] on by default [INFO] [stderr] note: overlaps with this [INFO] [stderr] --> src/stable.rs:727:17 [INFO] [stderr] | [INFO] [stderr] 727 | b'"' => escaped.push_str("\\\""), [INFO] [stderr] | ^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_overlapping_arm [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stable.rs:766:12 [INFO] [stderr] | [INFO] [stderr] 766 | if input_no_ws.rest.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `input_no_ws.rest.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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:813:1 [INFO] [stderr] | [INFO] [stderr] 813 | / named!(token_kind -> TokenTree, alt!( [INFO] [stderr] 814 | | map!(group, |g| TokenTree::Group(::Group::_new_stable(g))) [INFO] [stderr] 815 | | | [INFO] [stderr] 816 | | map!(literal, |l| TokenTree::Literal(::Literal::_new_stable(l))) // must be before symbol [INFO] [stderr] ... | [INFO] [stderr] 820 | | symbol_leading_ws [INFO] [stderr] 821 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:823:1 [INFO] [stderr] | [INFO] [stderr] 823 | / named!(group -> Group, alt!( [INFO] [stderr] 824 | | delimited!( [INFO] [stderr] 825 | | punct!("("), [INFO] [stderr] 826 | | token_stream, [INFO] [stderr] ... | [INFO] [stderr] 840 | | ) => { |ts| Group::new(Delimiter::Brace, ts) } [INFO] [stderr] 841 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:896:1 [INFO] [stderr] | [INFO] [stderr] 896 | / named!(literal_nocapture -> (), alt!( [INFO] [stderr] 897 | | string [INFO] [stderr] 898 | | | [INFO] [stderr] 899 | | byte_string [INFO] [stderr] ... | [INFO] [stderr] 907 | | int [INFO] [stderr] 908 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:910:1 [INFO] [stderr] | [INFO] [stderr] 910 | / named!(string -> (), alt!( [INFO] [stderr] 911 | | quoted_string [INFO] [stderr] 912 | | | [INFO] [stderr] 913 | | preceded!( [INFO] [stderr] ... | [INFO] [stderr] 916 | | ) => { |_| () } [INFO] [stderr] 917 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:919:1 [INFO] [stderr] | [INFO] [stderr] 919 | / named!(quoted_string -> (), delimited!( [INFO] [stderr] 920 | | punct!("\""), [INFO] [stderr] 921 | | cooked_string, [INFO] [stderr] 922 | | tag!("\"") [INFO] [stderr] 923 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:969:1 [INFO] [stderr] | [INFO] [stderr] 969 | / named!(byte_string -> (), alt!( [INFO] [stderr] 970 | | delimited!( [INFO] [stderr] 971 | | punct!("b\""), [INFO] [stderr] 972 | | cooked_byte_string, [INFO] [stderr] ... | [INFO] [stderr] 979 | | ) => { |_| () } [INFO] [stderr] 980 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:1050:1 [INFO] [stderr] | [INFO] [stderr] 1050 | / named!(byte -> (), do_parse!( [INFO] [stderr] 1051 | | punct!("b") >> [INFO] [stderr] 1052 | | tag!("'") >> [INFO] [stderr] 1053 | | cooked_byte >> [INFO] [stderr] 1054 | | tag!("'") >> [INFO] [stderr] 1055 | | (()) [INFO] [stderr] 1056 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:1085:1 [INFO] [stderr] | [INFO] [stderr] 1085 | / named!(character -> (), do_parse!( [INFO] [stderr] 1086 | | punct!("'") >> [INFO] [stderr] 1087 | | cooked_char >> [INFO] [stderr] 1088 | | tag!("'") >> [INFO] [stderr] 1089 | | (()) [INFO] [stderr] 1090 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1276:28 [INFO] [stderr] | [INFO] [stderr] 1276 | b'0'...b'9' => (b - b'0') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'0')` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1277:33 [INFO] [stderr] | [INFO] [stderr] 1277 | b'a'...b'f' => 10 + (b - b'a') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'a')` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1278:33 [INFO] [stderr] | [INFO] [stderr] 1278 | b'A'...b'F' => 10 + (b - b'A') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'A')` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/unstable.rs:71:41 [INFO] [stderr] | [INFO] [stderr] 71 | let works = panic::catch_unwind(|| proc_macro::Span::call_site()).is_ok(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `proc_macro::Span::call_site` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `imp::TokenStream` [INFO] [stderr] --> src/unstable.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | / pub fn new() -> TokenStream { [INFO] [stderr] 89 | | if nightly_works() { [INFO] [stderr] 90 | | TokenStream::Nightly(proc_macro::TokenStream::new()) [INFO] [stderr] 91 | | } else { [INFO] [stderr] 92 | | TokenStream::Stable(stable::TokenStream::new()) [INFO] [stderr] 93 | | } [INFO] [stderr] 94 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 87 | impl Default for imp::TokenStream { [INFO] [stderr] 88 | fn default() -> Self { [INFO] [stderr] 89 | Self::new() [INFO] [stderr] 90 | } [INFO] [stderr] 91 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: you should consider deriving a `Default` implementation for `stable::TokenStream` [INFO] [stderr] --> src/stable.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | / pub fn new() -> TokenStream { [INFO] [stderr] 30 | | TokenStream { inner: Vec::new() } [INFO] [stderr] 31 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default_derive)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default_derive [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 21 | #[derive(Default)] [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stable.rs:66:20 [INFO] [stderr] | [INFO] [stderr] 66 | if skip_whitespace(input).len() != 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!skip_whitespace(input).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: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/stable.rs:351:24 [INFO] [stderr] | [INFO] [stderr] 351 | pub fn resolved_at(&self, _other: Span) -> Span { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::trivially_copy_pass_by_ref)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: this argument is passed by reference, but would be more efficient if passed by value [INFO] [stderr] --> src/stable.rs:358:23 [INFO] [stderr] | [INFO] [stderr] 358 | pub fn located_at(&self, other: Span) -> Span { [INFO] [stderr] | ^^^^^ help: consider passing by value instead: `self` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#trivially_copy_pass_by_ref [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/stable.rs:691:24 [INFO] [stderr] | [INFO] [stderr] 691 | if !s.contains(".") { [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_char_pattern)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: single-character string constant used as pattern [INFO] [stderr] --> src/stable.rs:699:24 [INFO] [stderr] | [INFO] [stderr] 699 | if !s.contains(".") { [INFO] [stderr] | ^^^ help: try using a char instead: `'.'` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_char_pattern [INFO] [stderr] [INFO] [stderr] warning: some ranges overlap [INFO] [stderr] --> src/stable.rs:729:17 [INFO] [stderr] | [INFO] [stderr] 729 | b'\x20'...b'\x7E' => escaped.push(*b as char), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::match_overlapping_arm)] on by default [INFO] [stderr] note: overlaps with this [INFO] [stderr] --> src/stable.rs:727:17 [INFO] [stderr] | [INFO] [stderr] 727 | b'"' => escaped.push_str("\\\""), [INFO] [stderr] | ^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_overlapping_arm [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/stable.rs:766:12 [INFO] [stderr] | [INFO] [stderr] 766 | if input_no_ws.rest.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `input_no_ws.rest.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: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:813:1 [INFO] [stderr] | [INFO] [stderr] 813 | / named!(token_kind -> TokenTree, alt!( [INFO] [stderr] 814 | | map!(group, |g| TokenTree::Group(::Group::_new_stable(g))) [INFO] [stderr] 815 | | | [INFO] [stderr] 816 | | map!(literal, |l| TokenTree::Literal(::Literal::_new_stable(l))) // must be before symbol [INFO] [stderr] ... | [INFO] [stderr] 820 | | symbol_leading_ws [INFO] [stderr] 821 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_lifetimes)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:823:1 [INFO] [stderr] | [INFO] [stderr] 823 | / named!(group -> Group, alt!( [INFO] [stderr] 824 | | delimited!( [INFO] [stderr] 825 | | punct!("("), [INFO] [stderr] 826 | | token_stream, [INFO] [stderr] ... | [INFO] [stderr] 840 | | ) => { |ts| Group::new(Delimiter::Brace, ts) } [INFO] [stderr] 841 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:896:1 [INFO] [stderr] | [INFO] [stderr] 896 | / named!(literal_nocapture -> (), alt!( [INFO] [stderr] 897 | | string [INFO] [stderr] 898 | | | [INFO] [stderr] 899 | | byte_string [INFO] [stderr] ... | [INFO] [stderr] 907 | | int [INFO] [stderr] 908 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:910:1 [INFO] [stderr] | [INFO] [stderr] 910 | / named!(string -> (), alt!( [INFO] [stderr] 911 | | quoted_string [INFO] [stderr] 912 | | | [INFO] [stderr] 913 | | preceded!( [INFO] [stderr] ... | [INFO] [stderr] 916 | | ) => { |_| () } [INFO] [stderr] 917 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:919:1 [INFO] [stderr] | [INFO] [stderr] 919 | / named!(quoted_string -> (), delimited!( [INFO] [stderr] 920 | | punct!("\""), [INFO] [stderr] 921 | | cooked_string, [INFO] [stderr] 922 | | tag!("\"") [INFO] [stderr] 923 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:969:1 [INFO] [stderr] | [INFO] [stderr] 969 | / named!(byte_string -> (), alt!( [INFO] [stderr] 970 | | delimited!( [INFO] [stderr] 971 | | punct!("b\""), [INFO] [stderr] 972 | | cooked_byte_string, [INFO] [stderr] ... | [INFO] [stderr] 979 | | ) => { |_| () } [INFO] [stderr] 980 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:1050:1 [INFO] [stderr] | [INFO] [stderr] 1050 | / named!(byte -> (), do_parse!( [INFO] [stderr] 1051 | | punct!("b") >> [INFO] [stderr] 1052 | | tag!("'") >> [INFO] [stderr] 1053 | | cooked_byte >> [INFO] [stderr] 1054 | | tag!("'") >> [INFO] [stderr] 1055 | | (()) [INFO] [stderr] 1056 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) [INFO] [stderr] --> src/strnom.rs:162:9 [INFO] [stderr] | [INFO] [stderr] 162 | / fn $name<'a>(i: Cursor<'a>) -> $crate::strnom::PResult<'a, $o> { [INFO] [stderr] 163 | | $submac!(i, $($args)*) [INFO] [stderr] 164 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] ::: src/stable.rs:1085:1 [INFO] [stderr] | [INFO] [stderr] 1085 | / named!(character -> (), do_parse!( [INFO] [stderr] 1086 | | punct!("'") >> [INFO] [stderr] 1087 | | cooked_char >> [INFO] [stderr] 1088 | | tag!("'") >> [INFO] [stderr] 1089 | | (()) [INFO] [stderr] 1090 | | )); [INFO] [stderr] | |___- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1276:28 [INFO] [stderr] | [INFO] [stderr] 1276 | b'0'...b'9' => (b - b'0') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'0')` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::cast_lossless)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1277:33 [INFO] [stderr] | [INFO] [stderr] 1277 | b'a'...b'f' => 10 + (b - b'a') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'a')` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: casting u8 to u64 may become silently lossy if types change [INFO] [stderr] --> src/stable.rs:1278:33 [INFO] [stderr] | [INFO] [stderr] 1278 | b'A'...b'F' => 10 + (b - b'A') as u64, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: try: `u64::from(b - b'A')` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cast_lossless [INFO] [stderr] [INFO] [stderr] warning: redundant closure found [INFO] [stderr] --> src/unstable.rs:71:41 [INFO] [stderr] | [INFO] [stderr] 71 | let works = panic::catch_unwind(|| proc_macro::Span::call_site()).is_ok(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove closure as shown: `proc_macro::Span::call_site` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_closure)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stderr] [INFO] [stderr] warning: you should consider adding a `Default` implementation for `imp::TokenStream` [INFO] [stderr] --> src/unstable.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | / pub fn new() -> TokenStream { [INFO] [stderr] 89 | | if nightly_works() { [INFO] [stderr] 90 | | TokenStream::Nightly(proc_macro::TokenStream::new()) [INFO] [stderr] 91 | | } else { [INFO] [stderr] 92 | | TokenStream::Stable(stable::TokenStream::new()) [INFO] [stderr] 93 | | } [INFO] [stderr] 94 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::new_without_default)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 87 | impl Default for imp::TokenStream { [INFO] [stderr] 88 | fn default() -> Self { [INFO] [stderr] 89 | Self::new() [INFO] [stderr] 90 | } [INFO] [stderr] 91 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 3.09s [INFO] running `"docker" "inspect" "1a0e0c9ed841247b5cca5fca3fd996df127e0a73630cccc235172426d1caa27e"` [INFO] running `"docker" "rm" "-f" "1a0e0c9ed841247b5cca5fca3fd996df127e0a73630cccc235172426d1caa27e"` [INFO] [stdout] 1a0e0c9ed841247b5cca5fca3fd996df127e0a73630cccc235172426d1caa27e