[INFO] crate cpclib 0.2.11-beta is already in cache [INFO] extracting crate cpclib 0.2.11-beta into work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/reg/cpclib/0.2.11-beta [INFO] extracting crate cpclib 0.2.11-beta into work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/reg/cpclib/0.2.11-beta [INFO] validating manifest of cpclib-0.2.11-beta on toolchain master#39401465da4ce27aeeb2c2a26133ac35c63aa515 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of cpclib-0.2.11-beta on toolchain try#f45cc3094ee337acd688771b9234318046b0572d [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing cpclib-0.2.11-beta [INFO] finished frobbing cpclib-0.2.11-beta [INFO] frobbed toml for cpclib-0.2.11-beta written to work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/reg/cpclib/0.2.11-beta/Cargo.toml [INFO] started frobbing cpclib-0.2.11-beta [INFO] finished frobbing cpclib-0.2.11-beta [INFO] frobbed toml for cpclib-0.2.11-beta written to work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/reg/cpclib/0.2.11-beta/Cargo.toml [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking cpclib-0.2.11-beta against master#39401465da4ce27aeeb2c2a26133ac35c63aa515 for pr-60914 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60914/worker-3/master#39401465da4ce27aeeb2c2a26133ac35c63aa515:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/reg/cpclib/0.2.11-beta:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/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" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] a3ca7b52bba28ba6b491df45df8200b2939dfb4b56662f8e7e292ddd604e5ff5 [INFO] running `"docker" "start" "-a" "a3ca7b52bba28ba6b491df45df8200b2939dfb4b56662f8e7e292ddd604e5ff5"` [INFO] [stderr] Checking delegate v0.2.0 [INFO] [stderr] Checking bitsets v0.1.1 [INFO] [stderr] Checking slice-of-array v0.2.1 [INFO] [stderr] Compiling libgit2-sys v0.7.11 [INFO] [stderr] Compiling num-derive v0.2.5 [INFO] [stderr] Compiling num_enum v0.1.1 [INFO] [stderr] Checking tiff v0.2.2 [INFO] [stderr] Checking image v0.20.1 [INFO] [stderr] Compiling git2 v0.7.5 [INFO] [stderr] Compiling built v0.3.0 [INFO] [stderr] Compiling cpclib v0.2.11-beta (/opt/crater/workdir) [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:206:1 [INFO] [stderr] | [INFO] [stderr] 206 | /// Parse a Basic bloc. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 207 | / named!( [INFO] [stderr] 208 | | pub parse_basic, Token>, do_parse!( [INFO] [stderr] 209 | | opt!(multispace) >> [INFO] [stderr] 210 | | tag_no_case!("LOCOMOTIVE") >> [INFO] [stderr] ... | [INFO] [stderr] 248 | | ) [INFO] [stderr] 249 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:341:1 [INFO] [stderr] | [INFO] [stderr] 341 | / /** [INFO] [stderr] 342 | | * No opcodes are expected there. [INFO] [stderr] 343 | | * Initially it was supposed to manage lines with only labels, however it has been extended [INFO] [stderr] 344 | | * to labels fallowed by specific commands. [INFO] [stderr] 345 | | */ [INFO] [stderr] | |___^ [INFO] [stderr] 346 | / named!( [INFO] [stderr] 347 | | pub parse_z80_line_label_only , Vec>, do_parse!( [INFO] [stderr] 348 | | opt!(line_ending) >> [INFO] [stderr] 349 | | label: parse_label >> [INFO] [stderr] ... | [INFO] [stderr] 386 | | ) [INFO] [stderr] 387 | | ); [INFO] [stderr] | |__________- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:475:1 [INFO] [stderr] | [INFO] [stderr] 475 | / /// Parse if expression. [INFO] [stderr] 476 | | /// TODO finish the implementation in order to have ELSEIF and ELSE branches [INFO] [stderr] | |____________________________________________________________________________^ [INFO] [stderr] 477 | / named!( [INFO] [stderr] 478 | | pub parse_conditional, Token>, do_parse!( [INFO] [stderr] 479 | | tag_no_case!("IF") >> [INFO] [stderr] 480 | | [INFO] [stderr] ... | [INFO] [stderr] 499 | | ) [INFO] [stderr] 500 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:732:1 [INFO] [stderr] | [INFO] [stderr] 732 | /// TODO treat all the cases [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 733 | / named!( [INFO] [stderr] 734 | | pub parse_logical_operator, Token>, do_parse!( [INFO] [stderr] 735 | | operator: alt_complete!( [INFO] [stderr] 736 | | value!(Mnemonic::And, tag_no_case!("AND")) | [INFO] [stderr] ... | [INFO] [stderr] 752 | | ) [INFO] [stderr] 753 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:917:1 [INFO] [stderr] | [INFO] [stderr] 917 | / /// TODO remove multispace [INFO] [stderr] 918 | | /// TODO reduce the flag space for jr [INFO] [stderr] | |_____________________________________^ [INFO] [stderr] 919 | / named!( [INFO] [stderr] 920 | | parse_call_jp_or_jr , Token>, do_parse!( [INFO] [stderr] 921 | | call_jp_or_jr: alt_complete!( [INFO] [stderr] 922 | | value!(Mnemonic::Jp, tag_no_case!("JP")) | [INFO] [stderr] ... | [INFO] [stderr] 939 | | ) [INFO] [stderr] 940 | | ); [INFO] [stderr] | |______- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1024:1 [INFO] [stderr] | [INFO] [stderr] 1024 | /// Parse the use of an indexed register as (IX + 5) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1025 | / named!( [INFO] [stderr] 1026 | | parse_indexregister_with_index , DataAccess>, do_parse!( [INFO] [stderr] 1027 | | tag!("(") >> [INFO] [stderr] 1028 | | many0!(space) >> [INFO] [stderr] ... | [INFO] [stderr] 1047 | | ) [INFO] [stderr] 1048 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1058:1 [INFO] [stderr] | [INFO] [stderr] 1058 | /// Parse an address access `(expression)` [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1059 | / named!( [INFO] [stderr] 1060 | | pub parse_address , DataAccess>, [INFO] [stderr] 1061 | | do_parse!( [INFO] [stderr] 1062 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1069 | | [INFO] [stderr] 1070 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1073:1 [INFO] [stderr] | [INFO] [stderr] 1073 | /// Parse (R16) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 1074 | / named!( [INFO] [stderr] 1075 | | pub parse_reg_address , DataAccess>, [INFO] [stderr] 1076 | | do_parse!( [INFO] [stderr] 1077 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1086 | | [INFO] [stderr] 1087 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1090:1 [INFO] [stderr] | [INFO] [stderr] 1090 | /// Parse (HL) [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 1091 | / named!( [INFO] [stderr] 1092 | | pub parse_hl_address, DataAccess>, [INFO] [stderr] 1093 | | do_parse!( [INFO] [stderr] 1094 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1102 | | ) [INFO] [stderr] 1103 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1110:1 [INFO] [stderr] | [INFO] [stderr] 1110 | /// Parse and expression and returns it inside a DataAccession::Expression [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1111 | / named!( [INFO] [stderr] 1112 | | pub parse_expr , DataAccess>, [INFO] [stderr] 1113 | | do_parse!( [INFO] [stderr] 1114 | | expr: expr >> [INFO] [stderr] ... | [INFO] [stderr] 1118 | | ) [INFO] [stderr] 1119 | | ); [INFO] [stderr] | |______- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1196:1 [INFO] [stderr] | [INFO] [stderr] 1196 | /// Parse a comment that start by `;` and ends at the end of the line. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1197 | / named!( comment, Token>, [INFO] [stderr] 1198 | | map!( [INFO] [stderr] 1199 | | preceded!( [INFO] [stderr] 1200 | | tag!( ";" ), [INFO] [stderr] ... | [INFO] [stderr] 1204 | | ) [INFO] [stderr] 1205 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/tokens/tokens.rs:54:21 [INFO] [stderr] | [INFO] [stderr] 54 | /// XXX Not stable timing [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 55 | &Mnemonic::Djnz => 3, // or 4 [INFO] [stderr] | -------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/assembler/mod.rs:579:13 [INFO] [stderr] | [INFO] [stderr] 579 | /// TODO add a 3rd pass to manage this case [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 580 | let value = self.resolve_expr_must_never_fail(&case.0)?; [INFO] [stderr] | -------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | /// Parse a line [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 35 | / named!( [INFO] [stderr] 36 | | pub parse_basic_line, BasicLine>, do_parse!( [INFO] [stderr] 37 | | line_number: dec_u16_inner >> [INFO] [stderr] 38 | | char!(' ') >> [INFO] [stderr] ... | [INFO] [stderr] 53 | | ) [INFO] [stderr] 54 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:56:1 [INFO] [stderr] | [INFO] [stderr] 56 | /// Parse a line BUT expect an end of line char [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 57 | / named!( [INFO] [stderr] 58 | | pub parse_basic_inner_line, BasicLine>, do_parse!( [INFO] [stderr] 59 | | line: parse_basic_line >> [INFO] [stderr] 60 | | line_ending >> [INFO] [stderr] ... | [INFO] [stderr] 64 | | ) [INFO] [stderr] 65 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | /// Parse any token [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 70 | / named!( [INFO] [stderr] 71 | | pub parse_token, BasicToken>, alt!( [INFO] [stderr] 72 | | parse_rem | [INFO] [stderr] 73 | | parse_simple_instruction | [INFO] [stderr] ... | [INFO] [stderr] 77 | | ) [INFO] [stderr] 78 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | / /// Parse the instructions that do not need a prefix byte [INFO] [stderr] 97 | | /// TODO Add all the other variants [INFO] [stderr] | |___________________________________^ [INFO] [stderr] 98 | / named!( [INFO] [stderr] 99 | | pub parse_simple_instruction, BasicToken>, do_parse!( [INFO] [stderr] 100 | | token: alt!( [INFO] [stderr] 101 | | tag_no_case!("CALL") => {|_| BasicTokenNoPrefix::Call} | [INFO] [stderr] ... | [INFO] [stderr] 108 | | ) [INFO] [stderr] 109 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | /// TODO add the missing chars [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 113 | / named!( [INFO] [stderr] 114 | | pub parse_char, BasicToken>, do_parse!( [INFO] [stderr] 115 | | token: alt!( [INFO] [stderr] 116 | | char!(':') => {|_| BasicTokenNoPrefix::StatementSeparator} | [INFO] [stderr] ... | [INFO] [stderr] 176 | | ) [INFO] [stderr] 177 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:179:1 [INFO] [stderr] | [INFO] [stderr] 179 | / /// Parse the instructions that do not need a prefix byte [INFO] [stderr] 180 | | /// TODO Add all the other instructions [INFO] [stderr] | |_______________________________________^ [INFO] [stderr] 181 | / named!( [INFO] [stderr] 182 | | pub parse_prefixed_instruction, BasicToken>, do_parse!( [INFO] [stderr] 183 | | token: alt!( [INFO] [stderr] 184 | | tag_no_case!("ABS") => {|_| BasicTokenPrefixed::Abs} [INFO] [stderr] ... | [INFO] [stderr] 189 | | ) [INFO] [stderr] 190 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/z80emu/emul.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | /// TODO use a cache to speed up that [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 21 | let opcode_size = opcode.number_of_bytes().unwrap(); [INFO] [stderr] | ---------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/disc/builder.rs:28:2 [INFO] [stderr] | [INFO] [stderr] 28 | /// Create the empty tracks -- to be filled in the next loop [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 29 | for (side, track_idx) in cfg.track_idx_iterator() { [INFO] [stderr] | _____- [INFO] [stderr] 30 | | let mut track = edsk.track_list.add_empty_track(); [INFO] [stderr] 31 | | track.track_number = track_idx; [INFO] [stderr] 32 | | track.side_number = match *side { [INFO] [stderr] ... | [INFO] [stderr] 37 | | track.track_size = edsk.disc_information_bloc.track_size_table[track_idx as usize] as u16 * 256; [INFO] [stderr] 38 | | } [INFO] [stderr] | |_____- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/disc/builder.rs:41:2 [INFO] [stderr] | [INFO] [stderr] 41 | /// Update the tracks stuff [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | for (&side, track_idx) in cfg.track_idx_iterator() { [INFO] [stderr] | _____- [INFO] [stderr] 43 | | let track_info = edsk.get_track_information_mut(side, track_idx) [INFO] [stderr] 44 | | .unwrap_or_else(||panic!("Unable to acquire track {} on side {:?} on the dsk", track_idx, side)); [INFO] [stderr] 45 | | let track_model = cfg.track_information_for_track(side, track_idx).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 59 | | ) [INFO] [stderr] 60 | | } [INFO] [stderr] | |_____- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:206:1 [INFO] [stderr] | [INFO] [stderr] 206 | /// Parse a Basic bloc. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 207 | / named!( [INFO] [stderr] 208 | | pub parse_basic, Token>, do_parse!( [INFO] [stderr] 209 | | opt!(multispace) >> [INFO] [stderr] 210 | | tag_no_case!("LOCOMOTIVE") >> [INFO] [stderr] ... | [INFO] [stderr] 248 | | ) [INFO] [stderr] 249 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_doc_comments)] on by default [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:341:1 [INFO] [stderr] | [INFO] [stderr] 341 | / /** [INFO] [stderr] 342 | | * No opcodes are expected there. [INFO] [stderr] 343 | | * Initially it was supposed to manage lines with only labels, however it has been extended [INFO] [stderr] 344 | | * to labels fallowed by specific commands. [INFO] [stderr] 345 | | */ [INFO] [stderr] | |___^ [INFO] [stderr] 346 | / named!( [INFO] [stderr] 347 | | pub parse_z80_line_label_only , Vec>, do_parse!( [INFO] [stderr] 348 | | opt!(line_ending) >> [INFO] [stderr] 349 | | label: parse_label >> [INFO] [stderr] ... | [INFO] [stderr] 386 | | ) [INFO] [stderr] 387 | | ); [INFO] [stderr] | |__________- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:475:1 [INFO] [stderr] | [INFO] [stderr] 475 | / /// Parse if expression. [INFO] [stderr] 476 | | /// TODO finish the implementation in order to have ELSEIF and ELSE branches [INFO] [stderr] | |____________________________________________________________________________^ [INFO] [stderr] 477 | / named!( [INFO] [stderr] 478 | | pub parse_conditional, Token>, do_parse!( [INFO] [stderr] 479 | | tag_no_case!("IF") >> [INFO] [stderr] 480 | | [INFO] [stderr] ... | [INFO] [stderr] 499 | | ) [INFO] [stderr] 500 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:732:1 [INFO] [stderr] | [INFO] [stderr] 732 | /// TODO treat all the cases [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 733 | / named!( [INFO] [stderr] 734 | | pub parse_logical_operator, Token>, do_parse!( [INFO] [stderr] 735 | | operator: alt_complete!( [INFO] [stderr] 736 | | value!(Mnemonic::And, tag_no_case!("AND")) | [INFO] [stderr] ... | [INFO] [stderr] 752 | | ) [INFO] [stderr] 753 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:917:1 [INFO] [stderr] | [INFO] [stderr] 917 | / /// TODO remove multispace [INFO] [stderr] 918 | | /// TODO reduce the flag space for jr [INFO] [stderr] | |_____________________________________^ [INFO] [stderr] 919 | / named!( [INFO] [stderr] 920 | | parse_call_jp_or_jr , Token>, do_parse!( [INFO] [stderr] 921 | | call_jp_or_jr: alt_complete!( [INFO] [stderr] 922 | | value!(Mnemonic::Jp, tag_no_case!("JP")) | [INFO] [stderr] ... | [INFO] [stderr] 939 | | ) [INFO] [stderr] 940 | | ); [INFO] [stderr] | |______- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1024:1 [INFO] [stderr] | [INFO] [stderr] 1024 | /// Parse the use of an indexed register as (IX + 5) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1025 | / named!( [INFO] [stderr] 1026 | | parse_indexregister_with_index , DataAccess>, do_parse!( [INFO] [stderr] 1027 | | tag!("(") >> [INFO] [stderr] 1028 | | many0!(space) >> [INFO] [stderr] ... | [INFO] [stderr] 1047 | | ) [INFO] [stderr] 1048 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1058:1 [INFO] [stderr] | [INFO] [stderr] 1058 | /// Parse an address access `(expression)` [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1059 | / named!( [INFO] [stderr] 1060 | | pub parse_address , DataAccess>, [INFO] [stderr] 1061 | | do_parse!( [INFO] [stderr] 1062 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1069 | | [INFO] [stderr] 1070 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1073:1 [INFO] [stderr] | [INFO] [stderr] 1073 | /// Parse (R16) [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 1074 | / named!( [INFO] [stderr] 1075 | | pub parse_reg_address , DataAccess>, [INFO] [stderr] 1076 | | do_parse!( [INFO] [stderr] 1077 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1086 | | [INFO] [stderr] 1087 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1090:1 [INFO] [stderr] | [INFO] [stderr] 1090 | /// Parse (HL) [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 1091 | / named!( [INFO] [stderr] 1092 | | pub parse_hl_address, DataAccess>, [INFO] [stderr] 1093 | | do_parse!( [INFO] [stderr] 1094 | | tag!("(") >> [INFO] [stderr] ... | [INFO] [stderr] 1102 | | ) [INFO] [stderr] 1103 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1110:1 [INFO] [stderr] | [INFO] [stderr] 1110 | /// Parse and expression and returns it inside a DataAccession::Expression [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1111 | / named!( [INFO] [stderr] 1112 | | pub parse_expr , DataAccess>, [INFO] [stderr] 1113 | | do_parse!( [INFO] [stderr] 1114 | | expr: expr >> [INFO] [stderr] ... | [INFO] [stderr] 1118 | | ) [INFO] [stderr] 1119 | | ); [INFO] [stderr] | |______- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/parser.rs:1196:1 [INFO] [stderr] | [INFO] [stderr] 1196 | /// Parse a comment that start by `;` and ends at the end of the line. [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 1197 | / named!( comment, Token>, [INFO] [stderr] 1198 | | map!( [INFO] [stderr] 1199 | | preceded!( [INFO] [stderr] 1200 | | tag!( ";" ), [INFO] [stderr] ... | [INFO] [stderr] 1204 | | ) [INFO] [stderr] 1205 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/tokens/tokens.rs:54:21 [INFO] [stderr] | [INFO] [stderr] 54 | /// XXX Not stable timing [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 55 | &Mnemonic::Djnz => 3, // or 4 [INFO] [stderr] | -------------------- rustdoc does not generate documentation for match arms [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/assembler/assembler/mod.rs:579:13 [INFO] [stderr] | [INFO] [stderr] 579 | /// TODO add a 3rd pass to manage this case [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 580 | let value = self.resolve_expr_must_never_fail(&case.0)?; [INFO] [stderr] | -------------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:34:1 [INFO] [stderr] | [INFO] [stderr] 34 | /// Parse a line [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] 35 | / named!( [INFO] [stderr] 36 | | pub parse_basic_line, BasicLine>, do_parse!( [INFO] [stderr] 37 | | line_number: dec_u16_inner >> [INFO] [stderr] 38 | | char!(' ') >> [INFO] [stderr] ... | [INFO] [stderr] 53 | | ) [INFO] [stderr] 54 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:56:1 [INFO] [stderr] | [INFO] [stderr] 56 | /// Parse a line BUT expect an end of line char [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 57 | / named!( [INFO] [stderr] 58 | | pub parse_basic_inner_line, BasicLine>, do_parse!( [INFO] [stderr] 59 | | line: parse_basic_line >> [INFO] [stderr] 60 | | line_ending >> [INFO] [stderr] ... | [INFO] [stderr] 64 | | ) [INFO] [stderr] 65 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:69:1 [INFO] [stderr] | [INFO] [stderr] 69 | /// Parse any token [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 70 | / named!( [INFO] [stderr] 71 | | pub parse_token, BasicToken>, alt!( [INFO] [stderr] 72 | | parse_rem | [INFO] [stderr] 73 | | parse_simple_instruction | [INFO] [stderr] ... | [INFO] [stderr] 77 | | ) [INFO] [stderr] 78 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | / /// Parse the instructions that do not need a prefix byte [INFO] [stderr] 97 | | /// TODO Add all the other variants [INFO] [stderr] | |___________________________________^ [INFO] [stderr] 98 | / named!( [INFO] [stderr] 99 | | pub parse_simple_instruction, BasicToken>, do_parse!( [INFO] [stderr] 100 | | token: alt!( [INFO] [stderr] 101 | | tag_no_case!("CALL") => {|_| BasicTokenNoPrefix::Call} | [INFO] [stderr] ... | [INFO] [stderr] 108 | | ) [INFO] [stderr] 109 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:112:1 [INFO] [stderr] | [INFO] [stderr] 112 | /// TODO add the missing chars [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 113 | / named!( [INFO] [stderr] 114 | | pub parse_char, BasicToken>, do_parse!( [INFO] [stderr] 115 | | token: alt!( [INFO] [stderr] 116 | | char!(':') => {|_| BasicTokenNoPrefix::StatementSeparator} | [INFO] [stderr] ... | [INFO] [stderr] 176 | | ) [INFO] [stderr] 177 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/basic/parser.rs:179:1 [INFO] [stderr] | [INFO] [stderr] 179 | / /// Parse the instructions that do not need a prefix byte [INFO] [stderr] 180 | | /// TODO Add all the other instructions [INFO] [stderr] | |_______________________________________^ [INFO] [stderr] 181 | / named!( [INFO] [stderr] 182 | | pub parse_prefixed_instruction, BasicToken>, do_parse!( [INFO] [stderr] 183 | | token: alt!( [INFO] [stderr] 184 | | tag_no_case!("ABS") => {|_| BasicTokenPrefixed::Abs} [INFO] [stderr] ... | [INFO] [stderr] 189 | | ) [INFO] [stderr] 190 | | ); [INFO] [stderr] | |__- rustdoc does not generate documentation for macro expansions [INFO] [stderr] | [INFO] [stderr] = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/z80emu/emul.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | /// TODO use a cache to speed up that [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 21 | let opcode_size = opcode.number_of_bytes().unwrap(); [INFO] [stderr] | ---------------------------------------------------- rustdoc does not generate documentation for statements [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/disc/builder.rs:28:2 [INFO] [stderr] | [INFO] [stderr] 28 | /// Create the empty tracks -- to be filled in the next loop [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 29 | for (side, track_idx) in cfg.track_idx_iterator() { [INFO] [stderr] | _____- [INFO] [stderr] 30 | | let mut track = edsk.track_list.add_empty_track(); [INFO] [stderr] 31 | | track.track_number = track_idx; [INFO] [stderr] 32 | | track.side_number = match *side { [INFO] [stderr] ... | [INFO] [stderr] 37 | | track.track_size = edsk.disc_information_bloc.track_size_table[track_idx as usize] as u16 * 256; [INFO] [stderr] 38 | | } [INFO] [stderr] | |_____- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused doc comment [INFO] [stderr] --> src/disc/builder.rs:41:2 [INFO] [stderr] | [INFO] [stderr] 41 | /// Update the tracks stuff [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 42 | for (&side, track_idx) in cfg.track_idx_iterator() { [INFO] [stderr] | _____- [INFO] [stderr] 43 | | let track_info = edsk.get_track_information_mut(side, track_idx) [INFO] [stderr] 44 | | .unwrap_or_else(||panic!("Unable to acquire track {} on side {:?} on the dsk", track_idx, side)); [INFO] [stderr] 45 | | let track_model = cfg.track_information_for_track(side, track_idx).unwrap(); [INFO] [stderr] ... | [INFO] [stderr] 59 | | ) [INFO] [stderr] 60 | | } [INFO] [stderr] | |_____- rustdoc does not generate documentation for expressions [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | #[macro_use] extern crate bitfield; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `alphanumeric1` [INFO] [stderr] --> src/assembler/parser.rs:1:76 [INFO] [stderr] | [INFO] [stderr] 1 | use nom::{Err, ErrorKind, IResult, space, space1, space0, line_ending,eol, alphanumeric1}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/assembler/parser.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use std::path::{PathBuf, Path}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `InputLength` is imported redundantly [INFO] [stderr] --> src/assembler/parser.rs:1457:9 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::{InputLength, InputIter}; [INFO] [stderr] | ----------- the item `InputLength` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1457 | use nom::InputLength; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `failure::ResultExt` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use failure::ResultExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `failure::Error` [INFO] [stderr] --> src/assembler/assembler/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use failure::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `itertools::Itertools` [INFO] [stderr] --> src/assembler/assembler/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use itertools::Itertools; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Err`, `eol`, `space0`, `space1`, `space` [INFO] [stderr] --> src/basic/parser.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::{Err, ErrorKind, IResult, space, space1, space0, line_ending,eol}; [INFO] [stderr] | ^^^ ^^^^^ ^^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/basic/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/sna.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/sna.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `arrayref` [INFO] [stderr] --> src/disc/amsdos.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use arrayref; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `slice_of_array::prelude::*` [INFO] [stderr] --> src/disc/amsdos.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use slice_of_array::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `hex_u32`, `space1` [INFO] [stderr] --> src/disc/cfg.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | use nom::{hex_u32, space0, space1, eol }; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/disc/cfg.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/lib.rs:21:1 [INFO] [stderr] | [INFO] [stderr] 21 | #[macro_use] extern crate bitfield; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `alphanumeric1` [INFO] [stderr] --> src/assembler/parser.rs:1:76 [INFO] [stderr] | [INFO] [stderr] 1 | use nom::{Err, ErrorKind, IResult, space, space1, space0, line_ending,eol, alphanumeric1}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/assembler/parser.rs:6:26 [INFO] [stderr] | [INFO] [stderr] 6 | use std::path::{PathBuf, Path}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: the item `InputLength` is imported redundantly [INFO] [stderr] --> src/assembler/parser.rs:1457:9 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::{InputLength, InputIter}; [INFO] [stderr] | ----------- the item `InputLength` is already imported here [INFO] [stderr] ... [INFO] [stderr] 1457 | use nom::InputLength; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `failure::ResultExt` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use failure::ResultExt; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `failure::Error` [INFO] [stderr] --> src/assembler/assembler/mod.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use failure::Error; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `itertools::Itertools` [INFO] [stderr] --> src/assembler/assembler/mod.rs:13:5 [INFO] [stderr] | [INFO] [stderr] 13 | use itertools::Itertools; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::assembler::tokens::*` [INFO] [stderr] --> src/assembler/assembler/mod.rs:1817:9 [INFO] [stderr] | [INFO] [stderr] 1817 | use crate::assembler::tokens::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Err`, `eol`, `space0`, `space1`, `space` [INFO] [stderr] --> src/basic/parser.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | use nom::{Err, ErrorKind, IResult, space, space1, space0, line_ending,eol}; [INFO] [stderr] | ^^^ ^^^^^ ^^^^^^ ^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BTreeMap` [INFO] [stderr] --> src/basic/mod.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use std::collections::BTreeMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/sna.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::BufReader` [INFO] [stderr] --> src/sna.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::io::BufReader; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `arrayref` [INFO] [stderr] --> src/disc/amsdos.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use arrayref; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `slice_of_array::prelude::*` [INFO] [stderr] --> src/disc/amsdos.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use slice_of_array::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `hex_u32`, `space1` [INFO] [stderr] --> src/disc/cfg.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | use nom::{hex_u32, space0, space1, eol }; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::str::FromStr` [INFO] [stderr] --> src/disc/cfg.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::str::FromStr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:1927:21 [INFO] [stderr] | [INFO] [stderr] 1927 | let count = visit_tokens(&tokens).unwrap().size(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:1947:21 [INFO] [stderr] | [INFO] [stderr] 1947 | let count = visit_tokens(&tokens).unwrap().size(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:1973:17 [INFO] [stderr] | [INFO] [stderr] 1973 | visit_tokens(&[token]); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:1994:21 [INFO] [stderr] | [INFO] [stderr] 1994 | let count = visit_tokens(&tokens).unwrap().size(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2009:19 [INFO] [stderr] | [INFO] [stderr] 2009 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2024:19 [INFO] [stderr] | [INFO] [stderr] 2024 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2035:19 [INFO] [stderr] | [INFO] [stderr] 2035 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2047:19 [INFO] [stderr] | [INFO] [stderr] 2047 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2071:19 [INFO] [stderr] | [INFO] [stderr] 2071 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2096:19 [INFO] [stderr] | [INFO] [stderr] 2096 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2152:19 [INFO] [stderr] | [INFO] [stderr] 2152 | let env = visit_tokens(&tokens); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::assembler::visit_tokens' [INFO] [stderr] --> src/assembler/assembler/mod.rs:2181:19 [INFO] [stderr] | [INFO] [stderr] 2181 | let env = visit_tokens(&tokens).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:326:14 [INFO] [stderr] | [INFO] [stderr] 326 | self.mut_listing().push(Token::Label(String::from(label))); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:331:14 [INFO] [stderr] | [INFO] [stderr] 331 | self.mut_listing().push(Token::Comment(String::from(comment))); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:350:22 [INFO] [stderr] | [INFO] [stderr] 350 | self.mut_listing().extend_from_slice(&local_tokens); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:326:14 [INFO] [stderr] | [INFO] [stderr] 326 | self.mut_listing().push(Token::Label(String::from(label))); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:331:14 [INFO] [stderr] | [INFO] [stderr] 331 | self.mut_listing().push(Token::Comment(String::from(comment))); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'assembler::tokens::listing::BaseListing::::mut_listing' [INFO] [stderr] --> src/assembler/tokens/tokens.rs:350:22 [INFO] [stderr] | [INFO] [stderr] 350 | self.mut_listing().extend_from_slice(&local_tokens); [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/assembler/assembler/mod.rs:962:9 [INFO] [stderr] | [INFO] [stderr] 962 | _ => Err(format!("Unable to assembler opcode {:?}", mnemonic).into()) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/disc/edsk.rs:408:4 [INFO] [stderr] | [INFO] [stderr] 408 | _ => unreachable!() [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/disc/edsk.rs:447:4 [INFO] [stderr] | [INFO] [stderr] 447 | _ => unreachable!() [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `byte_width` [INFO] [stderr] --> src/imageconverter.rs:360:44 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `byte_width: _` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/imageconverter.rs:360:21 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `data: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/imageconverter.rs:360:59 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `height: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `palette` [INFO] [stderr] --> src/imageconverter.rs:360:31 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `palette: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `byte_width` [INFO] [stderr] --> src/imageconverter.rs:363:70 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `byte_width: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/imageconverter.rs:363:47 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `data: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/imageconverter.rs:363:85 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `height: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `palette` [INFO] [stderr] --> src/imageconverter.rs:363:57 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `palette: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `counter_label` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:360:56 [INFO] [stderr] | [INFO] [stderr] 360 | if let Token::Repeat(ref expr, ref tokens, ref counter_label) = self { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_counter_label` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:368:21 [INFO] [stderr] | [INFO] [stderr] 368 | for i in 0..count { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:397:47 [INFO] [stderr] | [INFO] [stderr] 397 | .map_err(|e|{ [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/basic/mod.rs:207:8 [INFO] [stderr] | [INFO] [stderr] 207 | Err(e) => None, [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/basic/tokens.rs:379:20 [INFO] [stderr] | [INFO] [stderr] 379 | pub fn new_string(value: &str) -> BasicValue { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/basic/tokens.rs:383:19 [INFO] [stderr] | [INFO] [stderr] 383 | pub fn new_float(value: i32) -> BasicValue { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/basic/tokens.rs:483:24 [INFO] [stderr] | [INFO] [stderr] 483 | BasicToken::Rsx(ref name) => { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `added_bytes` [INFO] [stderr] --> src/disc/edsk.rs:724:8 [INFO] [stderr] | [INFO] [stderr] 724 | let added_bytes = track.to_buffer(buffer); [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_added_bytes` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/disc/edsk.rs:900:42 [INFO] [stderr] | [INFO] [stderr] 900 | pub fn min_sector>(&self, size: S) -> u8 { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `catalog` [INFO] [stderr] --> src/disc/amsdos.rs:668:11 [INFO] [stderr] | [INFO] [stderr] 668 | let mut catalog = self.catalog(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_catalog` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `missing` [INFO] [stderr] --> src/disc/amsdos.rs:845:8 [INFO] [stderr] | [INFO] [stderr] 845 | let missing = size - data.len(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_missing` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ga.rs:541:13 [INFO] [stderr] | [INFO] [stderr] 541 | let mut counter_added = 0; [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/assembler/assembler/mod.rs:962:9 [INFO] [stderr] | [INFO] [stderr] 962 | _ => Err(format!("Unable to assembler opcode {:?}", mnemonic).into()) [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unreachable_patterns)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/assembler/tokens/instructions.rs:426:13 [INFO] [stderr] | [INFO] [stderr] 426 | let mut env = &mut crate::assembler::assembler::Env::with_table(table); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/disc/edsk.rs:408:4 [INFO] [stderr] | [INFO] [stderr] 408 | _ => unreachable!() [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/disc/edsk.rs:447:4 [INFO] [stderr] | [INFO] [stderr] 447 | _ => unreachable!() [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/basic/mod.rs:138:13 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(mut lines: Vec) -> BasicProgram { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `byte_width` [INFO] [stderr] --> src/imageconverter.rs:360:44 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `byte_width: _` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/imageconverter.rs:360:21 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `data: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/imageconverter.rs:360:59 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `height: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `palette` [INFO] [stderr] --> src/imageconverter.rs:360:31 [INFO] [stderr] | [INFO] [stderr] 360 | ref data, ref palette, ref byte_width,ref height} => { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `palette: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `byte_width` [INFO] [stderr] --> src/imageconverter.rs:363:70 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `byte_width: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `data` [INFO] [stderr] --> src/imageconverter.rs:363:47 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `data: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `height` [INFO] [stderr] --> src/imageconverter.rs:363:85 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `height: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `palette` [INFO] [stderr] --> src/imageconverter.rs:363:57 [INFO] [stderr] | [INFO] [stderr] 363 | &Output::LinearEncodedChuncky{ref data, ref palette, ref byte_width,ref height}=> { [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: try ignoring the field: `palette: _` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `counter_label` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:360:56 [INFO] [stderr] | [INFO] [stderr] 360 | if let Token::Repeat(ref expr, ref tokens, ref counter_label) = self { [INFO] [stderr] | ^^^^^^^^^^^^^ help: consider prefixing with an underscore: `_counter_label` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:368:21 [INFO] [stderr] | [INFO] [stderr] 368 | for i in 0..count { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/assembler/tokens/instructions.rs:397:47 [INFO] [stderr] | [INFO] [stderr] 397 | .map_err(|e|{ [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `e` [INFO] [stderr] --> src/basic/mod.rs:207:8 [INFO] [stderr] | [INFO] [stderr] 207 | Err(e) => None, [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_e` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/basic/tokens.rs:379:20 [INFO] [stderr] | [INFO] [stderr] 379 | pub fn new_string(value: &str) -> BasicValue { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/basic/tokens.rs:383:19 [INFO] [stderr] | [INFO] [stderr] 383 | pub fn new_float(value: i32) -> BasicValue { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/basic/tokens.rs:483:24 [INFO] [stderr] | [INFO] [stderr] 483 | BasicToken::Rsx(ref name) => { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `added_bytes` [INFO] [stderr] --> src/disc/edsk.rs:724:8 [INFO] [stderr] | [INFO] [stderr] 724 | let added_bytes = track.to_buffer(buffer); [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_added_bytes` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/disc/edsk.rs:900:42 [INFO] [stderr] | [INFO] [stderr] 900 | pub fn min_sector>(&self, size: S) -> u8 { [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `catalog` [INFO] [stderr] --> src/disc/amsdos.rs:668:11 [INFO] [stderr] | [INFO] [stderr] 668 | let mut catalog = self.catalog(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_catalog` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `missing` [INFO] [stderr] --> src/disc/amsdos.rs:845:8 [INFO] [stderr] | [INFO] [stderr] 845 | let missing = size - data.len(); [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_missing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `next` [INFO] [stderr] --> src/disc/cfg.rs:522:8 [INFO] [stderr] | [INFO] [stderr] 522 | let (next, res) = res.unwrap(); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_next` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `next` [INFO] [stderr] --> src/disc/cfg.rs:528:8 [INFO] [stderr] | [INFO] [stderr] 528 | let (next, res) = res.unwrap(); [INFO] [stderr] | ^^^^ help: consider prefixing with an underscore: `_next` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/ga.rs:541:13 [INFO] [stderr] | [INFO] [stderr] 541 | let mut counter_added = 0; [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:586:7 [INFO] [stderr] | [INFO] [stderr] 586 | let mut set = (2..=255).map(|b|{BlocIdx::from(b)}) [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:668:7 [INFO] [stderr] | [INFO] [stderr] 668 | let mut catalog = self.catalog(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:868:7 [INFO] [stderr] | [INFO] [stderr] 868 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:873:7 [INFO] [stderr] | [INFO] [stderr] 873 | let mut bytes = &mut (sector.values_mut()[idx_in_sector..(idx_in_sector+AmsdosEntry::len())]); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:944:7 [INFO] [stderr] | [INFO] [stderr] 944 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:951:7 [INFO] [stderr] | [INFO] [stderr] 951 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/assembler/tokens/instructions.rs:426:13 [INFO] [stderr] | [INFO] [stderr] 426 | let mut env = &mut crate::assembler::assembler::Env::with_table(table); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/basic/mod.rs:138:13 [INFO] [stderr] | [INFO] [stderr] 138 | pub fn new(mut lines: Vec) -> BasicProgram { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/basic/mod.rs:370:7 [INFO] [stderr] | [INFO] [stderr] 370 | let mut prog = BasicProgram::parse(code).unwrap(); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/z80emu/z80.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | unsafe {write!(f, "({:?}, {:?})", &self.high, &self.low)} [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_unsafe)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:586:7 [INFO] [stderr] | [INFO] [stderr] 586 | let mut set = (2..=255).map(|b|{BlocIdx::from(b)}) [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:668:7 [INFO] [stderr] | [INFO] [stderr] 668 | let mut catalog = self.catalog(); [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:868:7 [INFO] [stderr] | [INFO] [stderr] 868 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:873:7 [INFO] [stderr] | [INFO] [stderr] 873 | let mut bytes = &mut (sector.values_mut()[idx_in_sector..(idx_in_sector+AmsdosEntry::len())]); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:944:7 [INFO] [stderr] | [INFO] [stderr] 944 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/disc/amsdos.rs:951:7 [INFO] [stderr] | [INFO] [stderr] 951 | let mut sector = self.disc.sector_mut( [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_unique_colors` [INFO] [stderr] --> src/image.rs:60:1 [INFO] [stderr] | [INFO] [stderr] 60 | fn get_unique_colors(img: &im::ImageBuffer, Vec>) -> HashSet>{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `extract_palette` [INFO] [stderr] --> src/image.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | fn extract_palette(img: &im::ImageBuffer, Vec>) -> Palette { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_uninitialized` [INFO] [stderr] --> src/assembler/assembler/mod.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | fn is_uninitialized(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_value` [INFO] [stderr] --> src/z80emu/emul.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | fn get_value(&self, access: &DataAccess) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_register_16` [INFO] [stderr] --> src/z80emu/emul.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | fn get_register_16(&self, reg: &DataAccess) -> & crate::z80emu::z80::Register16{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `eval_expr` [INFO] [stderr] --> src/z80emu/emul.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | fn eval_expr(&self, expr: &Expr) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_NB_RECORDS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:612:1 [INFO] [stderr] | [INFO] [stderr] 612 | const DATA_NB_RECORDS_PER_TRACK:u8 = 36; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_BLOCK_SHIFT` [INFO] [stderr] --> src/disc/amsdos.rs:613:1 [INFO] [stderr] | [INFO] [stderr] 613 | const DATA_BLOCK_SHIFT:u8 = 3; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_BLOCK_MASK` [INFO] [stderr] --> src/disc/amsdos.rs:614:1 [INFO] [stderr] | [INFO] [stderr] 614 | const DATA_BLOCK_MASK:u8 = 7; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_EXTENT_MASK` [INFO] [stderr] --> src/disc/amsdos.rs:615:1 [INFO] [stderr] | [INFO] [stderr] 615 | const DATA_EXTENT_MASK:u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_NB_BLOCKS` [INFO] [stderr] --> src/disc/amsdos.rs:616:1 [INFO] [stderr] | [INFO] [stderr] 616 | const DATA_NB_BLOCKS:u8 = 180; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_TWO_DIRECTORY_BLOCKS` [INFO] [stderr] --> src/disc/amsdos.rs:617:1 [INFO] [stderr] | [INFO] [stderr] 617 | const DATA_TWO_DIRECTORY_BLOCKS: u8 = 0x00c0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_SIZE_OF_CHECKSUM_VECTOR` [INFO] [stderr] --> src/disc/amsdos.rs:618:1 [INFO] [stderr] | [INFO] [stderr] 618 | const DATA_SIZE_OF_CHECKSUM_VECTOR:u8 = 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_RESERVED_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:619:1 [INFO] [stderr] | [INFO] [stderr] 619 | const DATA_RESERVED_TRACK: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_SECTORS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:621:1 [INFO] [stderr] | [INFO] [stderr] 621 | const DATA_SECTORS_PER_TRACK: u8 = 9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_GAP_LENGTH_READ_WRITE` [INFO] [stderr] --> src/disc/amsdos.rs:622:1 [INFO] [stderr] | [INFO] [stderr] 622 | const DATA_GAP_LENGTH_READ_WRITE : u8 = 42; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_GAP_LENGTH_FORMAT` [INFO] [stderr] --> src/disc/amsdos.rs:623:1 [INFO] [stderr] | [INFO] [stderr] 623 | const DATA_GAP_LENGTH_FORMAT : u8 = 82; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_FILLER_BYTE` [INFO] [stderr] --> src/disc/amsdos.rs:624:1 [INFO] [stderr] | [INFO] [stderr] 624 | const DATA_FILLER_BYTE: u8 = 0xe9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_LOG2_SECTOR_SIZE_MINUS_SEVEN` [INFO] [stderr] --> src/disc/amsdos.rs:625:1 [INFO] [stderr] | [INFO] [stderr] 625 | const DATA_LOG2_SECTOR_SIZE_MINUS_SEVEN: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_RECORDS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:626:1 [INFO] [stderr] | [INFO] [stderr] 626 | const DATA_RECORDS_PER_TRACK:u8 = 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(stable_features)] on by default [INFO] [stderr] [INFO] [stderr] warning: method `nbPixelsPerByte` should have a snake case name [INFO] [stderr] --> src/image.rs:43:12 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn nbPixelsPerByte(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_pixels_per_byte` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `horizontalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | horizontalDisplayed: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `horizontal_displayed` [INFO] [stderr] [INFO] [stderr] warning: structure field `verticalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | verticalDisplayed: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vertical_displayed` [INFO] [stderr] [INFO] [stderr] warning: structure field `maximumRasterAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 79 | maximumRasterAddress: u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `maximum_raster_address` [INFO] [stderr] [INFO] [stderr] warning: variable `horizontalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:16 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `horizontal_displayed` [INFO] [stderr] [INFO] [stderr] warning: variable `verticalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:41 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vertical_displayed` [INFO] [stderr] [INFO] [stderr] warning: variable `maximumRasterAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:64 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `maximum_raster_address` [INFO] [stderr] [INFO] [stderr] warning: method `nbLinesPerChar` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:127:12 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn nbLinesPerChar(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_lines_per_char` [INFO] [stderr] [INFO] [stderr] warning: method `nbCharLines` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:132:12 [INFO] [stderr] | [INFO] [stderr] 132 | pub fn nbCharLines(&self) -> u8{ [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `nb_char_lines` [INFO] [stderr] [INFO] [stderr] warning: method `nbWordColumns` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:136:12 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn nbWordColumns(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_word_columns` [INFO] [stderr] [INFO] [stderr] warning: method `nbByteColumns` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:141:12 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn nbByteColumns(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_byte_columns` [INFO] [stderr] [INFO] [stderr] warning: method `R12` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:254:12 [INFO] [stderr] | [INFO] [stderr] 254 | pub fn R12(&self) -> u8 { [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `r12` [INFO] [stderr] [INFO] [stderr] warning: method `R13` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:258:12 [INFO] [stderr] | [INFO] [stderr] 258 | pub fn R13(&self) -> u8 { [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `r13` [INFO] [stderr] [INFO] [stderr] warning: structure field `outputDimension` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:325:9 [INFO] [stderr] | [INFO] [stderr] 325 | outputDimension: CPCScreenDimension, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `output_dimension` [INFO] [stderr] [INFO] [stderr] warning: structure field `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:326:9 [INFO] [stderr] | [INFO] [stderr] 326 | displayAddress: DisplayAddress [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: variable `outputDimension` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:492:41 [INFO] [stderr] | [INFO] [stderr] 492 | OutputFormat::CPCMemory{ref outputDimension, ref displayAddress} [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `output_dimension` [INFO] [stderr] [INFO] [stderr] warning: variable `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:492:62 [INFO] [stderr] | [INFO] [stderr] 492 | OutputFormat::CPCMemory{ref outputDimension, ref displayAddress} [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: variable `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:517:82 [INFO] [stderr] | [INFO] [stderr] 517 | fn build_memory_blocks(&mut self, sprite: & Sprite, dim: CPCScreenDimension, displayAddress: DisplayAddress) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/assembler/assembler/mod.rs:786:13 [INFO] [stderr] | [INFO] [stderr] 786 | / basic.hide_lines(hidden_lines.unwrap [INFO] [stderr] 787 | | ()); [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: associated constant `EndOfCylinder` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:619:15 [INFO] [stderr] | [INFO] [stderr] 619 | const EndOfCylinder = 1<<7; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `END_OF_CYLINDER` [INFO] [stderr] [INFO] [stderr] warning: associated constant `DataError` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:620:15 [INFO] [stderr] | [INFO] [stderr] 620 | const DataError = 1<<5; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `DATA_ERROR` [INFO] [stderr] [INFO] [stderr] warning: associated constant `NoData` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:621:15 [INFO] [stderr] | [INFO] [stderr] 621 | const NoData = 1<<2; [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `NO_DATA` [INFO] [stderr] [INFO] [stderr] warning: associated constant `MissingAddressMark` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:622:15 [INFO] [stderr] | [INFO] [stderr] 622 | const MissingAddressMark = 1<<0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MISSING_ADDRESS_MARK` [INFO] [stderr] [INFO] [stderr] warning: associated constant `ControlMark` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:628:15 [INFO] [stderr] | [INFO] [stderr] 628 | const ControlMark = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CONTROL_MARK` [INFO] [stderr] [INFO] [stderr] warning: associated constant `DataErrorInDataField` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:629:15 [INFO] [stderr] | [INFO] [stderr] 629 | const DataErrorInDataField = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `DATA_ERROR_IN_DATA_FIELD` [INFO] [stderr] [INFO] [stderr] warning: associated constant `MissingAddressMarkInDataField` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:630:15 [INFO] [stderr] | [INFO] [stderr] 630 | const MissingAddressMarkInDataField = 1<<0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MISSING_ADDRESS_MARK_IN_DATA_FIELD` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/z80emu/z80.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | unsafe {write!(f, "({:?}, {:?})", &self.high, &self.low)} [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_unsafe)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `get_unique_colors` [INFO] [stderr] --> src/image.rs:60:1 [INFO] [stderr] | [INFO] [stderr] 60 | fn get_unique_colors(img: &im::ImageBuffer, Vec>) -> HashSet>{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `extract_palette` [INFO] [stderr] --> src/image.rs:70:1 [INFO] [stderr] | [INFO] [stderr] 70 | fn extract_palette(img: &im::ImageBuffer, Vec>) -> Palette { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_uninitialized` [INFO] [stderr] --> src/assembler/assembler/mod.rs:76:5 [INFO] [stderr] | [INFO] [stderr] 76 | fn is_uninitialized(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_value` [INFO] [stderr] --> src/z80emu/emul.rs:88:5 [INFO] [stderr] | [INFO] [stderr] 88 | fn get_value(&self, access: &DataAccess) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_register_16` [INFO] [stderr] --> src/z80emu/emul.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | fn get_register_16(&self, reg: &DataAccess) -> & crate::z80emu::z80::Register16{ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `eval_expr` [INFO] [stderr] --> src/z80emu/emul.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | fn eval_expr(&self, expr: &Expr) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_NB_RECORDS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:612:1 [INFO] [stderr] | [INFO] [stderr] 612 | const DATA_NB_RECORDS_PER_TRACK:u8 = 36; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_BLOCK_SHIFT` [INFO] [stderr] --> src/disc/amsdos.rs:613:1 [INFO] [stderr] | [INFO] [stderr] 613 | const DATA_BLOCK_SHIFT:u8 = 3; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_BLOCK_MASK` [INFO] [stderr] --> src/disc/amsdos.rs:614:1 [INFO] [stderr] | [INFO] [stderr] 614 | const DATA_BLOCK_MASK:u8 = 7; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_EXTENT_MASK` [INFO] [stderr] --> src/disc/amsdos.rs:615:1 [INFO] [stderr] | [INFO] [stderr] 615 | const DATA_EXTENT_MASK:u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_NB_BLOCKS` [INFO] [stderr] --> src/disc/amsdos.rs:616:1 [INFO] [stderr] | [INFO] [stderr] 616 | const DATA_NB_BLOCKS:u8 = 180; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_TWO_DIRECTORY_BLOCKS` [INFO] [stderr] --> src/disc/amsdos.rs:617:1 [INFO] [stderr] | [INFO] [stderr] 617 | const DATA_TWO_DIRECTORY_BLOCKS: u8 = 0x00c0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_SIZE_OF_CHECKSUM_VECTOR` [INFO] [stderr] --> src/disc/amsdos.rs:618:1 [INFO] [stderr] | [INFO] [stderr] 618 | const DATA_SIZE_OF_CHECKSUM_VECTOR:u8 = 16; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_RESERVED_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:619:1 [INFO] [stderr] | [INFO] [stderr] 619 | const DATA_RESERVED_TRACK: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_SECTORS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:621:1 [INFO] [stderr] | [INFO] [stderr] 621 | const DATA_SECTORS_PER_TRACK: u8 = 9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_GAP_LENGTH_READ_WRITE` [INFO] [stderr] --> src/disc/amsdos.rs:622:1 [INFO] [stderr] | [INFO] [stderr] 622 | const DATA_GAP_LENGTH_READ_WRITE : u8 = 42; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_GAP_LENGTH_FORMAT` [INFO] [stderr] --> src/disc/amsdos.rs:623:1 [INFO] [stderr] | [INFO] [stderr] 623 | const DATA_GAP_LENGTH_FORMAT : u8 = 82; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_FILLER_BYTE` [INFO] [stderr] --> src/disc/amsdos.rs:624:1 [INFO] [stderr] | [INFO] [stderr] 624 | const DATA_FILLER_BYTE: u8 = 0xe9; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_LOG2_SECTOR_SIZE_MINUS_SEVEN` [INFO] [stderr] --> src/disc/amsdos.rs:625:1 [INFO] [stderr] | [INFO] [stderr] 625 | const DATA_LOG2_SECTOR_SIZE_MINUS_SEVEN: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `DATA_RECORDS_PER_TRACK` [INFO] [stderr] --> src/disc/amsdos.rs:626:1 [INFO] [stderr] | [INFO] [stderr] 626 | const DATA_RECORDS_PER_TRACK:u8 = 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: the feature `try_from` has been stable since 1.34.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/lib.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | #![feature(try_from)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(stable_features)] on by default [INFO] [stderr] [INFO] [stderr] warning: method `nbPixelsPerByte` should have a snake case name [INFO] [stderr] --> src/image.rs:43:12 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn nbPixelsPerByte(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_pixels_per_byte` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `horizontalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:75:5 [INFO] [stderr] | [INFO] [stderr] 75 | horizontalDisplayed: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `horizontal_displayed` [INFO] [stderr] [INFO] [stderr] warning: structure field `verticalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | verticalDisplayed: u8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vertical_displayed` [INFO] [stderr] [INFO] [stderr] warning: structure field `maximumRasterAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:79:5 [INFO] [stderr] | [INFO] [stderr] 79 | maximumRasterAddress: u8 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `maximum_raster_address` [INFO] [stderr] [INFO] [stderr] warning: variable `horizontalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:16 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `horizontal_displayed` [INFO] [stderr] [INFO] [stderr] warning: variable `verticalDisplayed` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:41 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `vertical_displayed` [INFO] [stderr] [INFO] [stderr] warning: variable `maximumRasterAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:117:64 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn new(horizontalDisplayed: u8, verticalDisplayed: u8, maximumRasterAddress: u8) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `maximum_raster_address` [INFO] [stderr] [INFO] [stderr] warning: method `nbLinesPerChar` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:127:12 [INFO] [stderr] | [INFO] [stderr] 127 | pub fn nbLinesPerChar(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_lines_per_char` [INFO] [stderr] [INFO] [stderr] warning: method `nbCharLines` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:132:12 [INFO] [stderr] | [INFO] [stderr] 132 | pub fn nbCharLines(&self) -> u8{ [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `nb_char_lines` [INFO] [stderr] [INFO] [stderr] warning: method `nbWordColumns` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:136:12 [INFO] [stderr] | [INFO] [stderr] 136 | pub fn nbWordColumns(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_word_columns` [INFO] [stderr] [INFO] [stderr] warning: method `nbByteColumns` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:141:12 [INFO] [stderr] | [INFO] [stderr] 141 | pub fn nbByteColumns(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `nb_byte_columns` [INFO] [stderr] [INFO] [stderr] warning: method `R12` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:254:12 [INFO] [stderr] | [INFO] [stderr] 254 | pub fn R12(&self) -> u8 { [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `r12` [INFO] [stderr] [INFO] [stderr] warning: method `R13` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:258:12 [INFO] [stderr] | [INFO] [stderr] 258 | pub fn R13(&self) -> u8 { [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `r13` [INFO] [stderr] [INFO] [stderr] warning: structure field `outputDimension` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:325:9 [INFO] [stderr] | [INFO] [stderr] 325 | outputDimension: CPCScreenDimension, [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `output_dimension` [INFO] [stderr] [INFO] [stderr] warning: structure field `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:326:9 [INFO] [stderr] | [INFO] [stderr] 326 | displayAddress: DisplayAddress [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: variable `outputDimension` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:492:41 [INFO] [stderr] | [INFO] [stderr] 492 | OutputFormat::CPCMemory{ref outputDimension, ref displayAddress} [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `output_dimension` [INFO] [stderr] [INFO] [stderr] warning: variable `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:492:62 [INFO] [stderr] | [INFO] [stderr] 492 | OutputFormat::CPCMemory{ref outputDimension, ref displayAddress} [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: variable `displayAddress` should have a snake case name [INFO] [stderr] --> src/imageconverter.rs:517:82 [INFO] [stderr] | [INFO] [stderr] 517 | fn build_memory_blocks(&mut self, sprite: & Sprite, dim: CPCScreenDimension, displayAddress: DisplayAddress) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `display_address` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/assembler/assembler/mod.rs:786:13 [INFO] [stderr] | [INFO] [stderr] 786 | / basic.hide_lines(hidden_lines.unwrap [INFO] [stderr] 787 | | ()); [INFO] [stderr] | |____________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: function `test_ld_R16_R16` should have a snake case name [INFO] [stderr] --> src/assembler/assembler/mod.rs:1908:12 [INFO] [stderr] | [INFO] [stderr] 1908 | pub fn test_ld_R16_R16() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `test_ld_r16_r16` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/assembler/assembler/mod.rs:1973:17 [INFO] [stderr] | [INFO] [stderr] 1973 | visit_tokens(&[token]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/basic/mod.rs:357:3 [INFO] [stderr] | [INFO] [stderr] 357 | prog.hide_line(BasicProgramLineIdx::Number(10)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/basic/mod.rs:409:3 [INFO] [stderr] | [INFO] [stderr] 409 | prog.hide_line(BasicProgramLineIdx::Number(20)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable `B` should have a snake case name [INFO] [stderr] --> src/z80emu/z80.rs:338:17 [INFO] [stderr] | [INFO] [stderr] 338 | let mut B = Register8::default(); [INFO] [stderr] | ^ help: convert the identifier to snake case: `b` [INFO] [stderr] [INFO] [stderr] warning: variable `BC` should have a snake case name [INFO] [stderr] --> src/z80emu/z80.rs:350:17 [INFO] [stderr] | [INFO] [stderr] 350 | let mut BC = Register16::default(); [INFO] [stderr] | ^^ help: convert the identifier to snake case: `bc` [INFO] [stderr] [INFO] [stderr] warning: associated constant `EndOfCylinder` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:619:15 [INFO] [stderr] | [INFO] [stderr] 619 | const EndOfCylinder = 1<<7; [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `END_OF_CYLINDER` [INFO] [stderr] [INFO] [stderr] warning: associated constant `DataError` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:620:15 [INFO] [stderr] | [INFO] [stderr] 620 | const DataError = 1<<5; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to upper case: `DATA_ERROR` [INFO] [stderr] [INFO] [stderr] warning: associated constant `NoData` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:621:15 [INFO] [stderr] | [INFO] [stderr] 621 | const NoData = 1<<2; [INFO] [stderr] | ^^^^^^ help: convert the identifier to upper case: `NO_DATA` [INFO] [stderr] [INFO] [stderr] warning: associated constant `MissingAddressMark` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:622:15 [INFO] [stderr] | [INFO] [stderr] 622 | const MissingAddressMark = 1<<0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MISSING_ADDRESS_MARK` [INFO] [stderr] [INFO] [stderr] warning: associated constant `ControlMark` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:628:15 [INFO] [stderr] | [INFO] [stderr] 628 | const ControlMark = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper case: `CONTROL_MARK` [INFO] [stderr] [INFO] [stderr] warning: associated constant `DataErrorInDataField` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:629:15 [INFO] [stderr] | [INFO] [stderr] 629 | const DataErrorInDataField = 1<<5; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `DATA_ERROR_IN_DATA_FIELD` [INFO] [stderr] [INFO] [stderr] warning: associated constant `MissingAddressMarkInDataField` should have an upper case name [INFO] [stderr] --> src/disc/edsk.rs:630:15 [INFO] [stderr] | [INFO] [stderr] 630 | const MissingAddressMarkInDataField = 1<<0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `MISSING_ADDRESS_MARK_IN_DATA_FIELD` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/ga.rs:8:7 [INFO] [stderr] | [INFO] [stderr] 8 | let mut p = Palette::empty(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/ga.rs:15:7 [INFO] [stderr] | [INFO] [stderr] 15 | let mut p = Palette::default(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> tests/ga.rs:25:7 [INFO] [stderr] | [INFO] [stderr] 25 | let mut p = Palette::new(); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `header` [INFO] [stderr] --> tests/amsdos.rs:144:7 [INFO] [stderr] | [INFO] [stderr] 144 | let header = &result[0..128]; [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_header` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `CompleteByteSlice` [INFO] [stderr] --> tests/parser.rs:11:35 [INFO] [stderr] | [INFO] [stderr] 11 | use nom::types::{CompleteStr, CompleteByteSlice}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ErrorKind`, `line_ending`, `space` [INFO] [stderr] --> tests/parser.rs:12:15 [INFO] [stderr] | [INFO] [stderr] 12 | use nom::{ErrorKind, IResult, line_ending, space}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/edsk.rs:83:3 [INFO] [stderr] | [INFO] [stderr] 83 | dsk.save(tmp_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/edsk.rs:109:3 [INFO] [stderr] | [INFO] [stderr] 109 | dsk.save(tmp_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/edsk.rs:120:3 [INFO] [stderr] | [INFO] [stderr] 120 | dsk1.save(tmp_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:126:24 [INFO] [stderr] | [INFO] [stderr] 126 | assert!(opcode.org_expr().is_some()); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:127:27 [INFO] [stderr] | [INFO] [stderr] 127 | let arg1 = opcode.org_expr().unwrap(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:140:24 [INFO] [stderr] | [INFO] [stderr] 140 | assert!(opcode.org_expr().is_some()); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:141:27 [INFO] [stderr] | [INFO] [stderr] 141 | let arg1 = opcode.org_expr().expect("expression expected"); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:157:24 [INFO] [stderr] | [INFO] [stderr] 157 | assert!(opcode.org_expr().is_some()); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::tokens::instructions::Token::org_expr': please use `expr` instead as other token need it [INFO] [stderr] --> tests/parser.rs:158:27 [INFO] [stderr] | [INFO] [stderr] 158 | let arg1 = opcode.org_expr().unwrap(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `cpclib::disc::cfg::*` [INFO] [stderr] --> tests/disccfgparser.rs:231:7 [INFO] [stderr] | [INFO] [stderr] 231 | use cpclib::disc::cfg::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::disc::cfg::TrackGroup::nb_sectors' [INFO] [stderr] --> tests/disccfgparser.rs:326:15 [INFO] [stderr] | [INFO] [stderr] 326 | track_info.nb_sectors(), [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> tests/assemble.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `cpclib::assembler::parser::*` [INFO] [stderr] --> tests/assemble.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | use cpclib::assembler::parser::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:929:13 [INFO] [stderr] | [INFO] [stderr] 929 | let tokens = get_val(parse_conditional(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:936:13 [INFO] [stderr] | [INFO] [stderr] 936 | let tokens = get_val(parse_conditional(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:941:13 [INFO] [stderr] | [INFO] [stderr] 941 | let tokens = get_val(parse_conditional(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:957:13 [INFO] [stderr] | [INFO] [stderr] 957 | let tokens = get_val(parse_conditional(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:965:13 [INFO] [stderr] | [INFO] [stderr] 965 | let tokens = get_val(parse_z80_code(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> tests/parser.rs:971:13 [INFO] [stderr] | [INFO] [stderr] 971 | let tokens = get_val(parse_z80_code(code)); [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'cpclib::assembler::assembler::visit_tokens' [INFO] [stderr] --> tests/assemble.rs:55:22 [INFO] [stderr] | [INFO] [stderr] 55 | let _count = visit_tokens(&tokens).unwrap().size(); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(deprecated)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | visit_token(&Token::Org(Expr::Value(10), None), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | visit_token(&Token::Defb(vec![Expr::Value(10), Expr::Value(5)]), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | visit_token(&Token::OpCode(Mnemonic::Ld, Some(DataAccess::Register8(Register8::A)), Some(DataAccess::Register8(Register8::L))), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:32:9 [INFO] [stderr] | [INFO] [stderr] 32 | visit_token(&Token::OpCode(Mnemonic::Ld, Some(DataAccess::Register8(Register8::A)), Some(DataAccess::Register8(Register8::A))), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | visit_token(&Token::OpCode(Mnemonic::Ld, Some(DataAccess::Register8(Register8::A)), Some(DataAccess::Register8(Register8::L))), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> tests/assemble.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | visit_token(&Token::OpCode(Mnemonic::Ld, Some(DataAccess::Register8(Register8::C)), Some(DataAccess::Register8(Register8::C))), &mut env); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: function is never used: `check_mnemonic` [INFO] [stderr] --> tests/parser.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | fn check_mnemonic(code: &str, mnemonic: Mnemonic) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_error` [INFO] [stderr] --> tests/parser.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | fn is_error(res: IResult, T>) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 04s [INFO] running `"docker" "inspect" "a3ca7b52bba28ba6b491df45df8200b2939dfb4b56662f8e7e292ddd604e5ff5"` [INFO] running `"docker" "rm" "-f" "a3ca7b52bba28ba6b491df45df8200b2939dfb4b56662f8e7e292ddd604e5ff5"` [INFO] [stdout] a3ca7b52bba28ba6b491df45df8200b2939dfb4b56662f8e7e292ddd604e5ff5