[INFO] cloning repository https://github.com/jzohdi/LCS
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jzohdi/LCS" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjzohdi%2FLCS", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjzohdi%2FLCS'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7dfc6048e9a5c565935578b90f7f06bbc0826052
[INFO] testing jzohdi/LCS against 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjzohdi%2FLCS" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jzohdi/LCS on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jzohdi/LCS
[INFO] finished tweaking git repo https://github.com/jzohdi/LCS
[INFO] tweaked toml for git repo https://github.com/jzohdi/LCS written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/jzohdi/LCS already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e59351dd34287ca6c2bcee57cd0165cc38cc9cd3c4302176df9a2cc0e3b92260
[INFO] running `Command { std: "docker" "start" "-a" "e59351dd34287ca6c2bcee57cd0165cc38cc9cd3c4302176df9a2cc0e3b92260", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e59351dd34287ca6c2bcee57cd0165cc38cc9cd3c4302176df9a2cc0e3b92260", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e59351dd34287ca6c2bcee57cd0165cc38cc9cd3c4302176df9a2cc0e3b92260", kill_on_drop: false }`
[INFO] [stdout] e59351dd34287ca6c2bcee57cd0165cc38cc9cd3c4302176df9a2cc0e3b92260
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2f1c72acf2a47407a2e81dfb6ae1111c3b9eb15a6e132cc03488f8a657fb0a70
[INFO] running `Command { std: "docker" "start" "-a" "2f1c72acf2a47407a2e81dfb6ae1111c3b9eb15a6e132cc03488f8a657fb0a70", kill_on_drop: false }`
[INFO] [stderr]    Compiling longest_bytes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_search` is never used
[INFO] [stdout]    --> src/lib.rs:179:4
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ukkonen_create` is never used
[INFO] [stdout]   --> src/ukkonen.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | enum LinkNode {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 119 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 120 |     Root,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 121 |     Internal(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 135 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stdout]    --> src/ukkonen.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:173:4
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_leaf_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AddNodeConfig` is never constructed
[INFO] [stdout]    --> src/ukkonen.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct AddNodeConfig {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stdout]    --> src/ukkonen.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 208 | struct UkkonenTree {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] 209 |     pub root: UNode,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 211 |     size: usize, // count of how many nodes
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 212 |     width: usize, // in our case will be 256
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ukkonen.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn pretty_print(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     fn inc_size(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     fn next_order(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `range` and `key` are never read
[INFO] [stdout]    --> src/ukkonen.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 490 | struct NodeConfig {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 491 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 492 |     pub key: u8
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ukkonen.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 498 | struct Range {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 499 |     pub start: usize,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 500 |     pub end: Option<usize>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stdout]    --> src/main.rs:119:141
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stdout]     |                                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stdout]     |                                                                                                                                             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_search_for_byte` is never used
[INFO] [stdout]    --> src/main.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `locations_from` is never used
[INFO] [stdout]    --> src/main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:33:44
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.45s
[INFO] running `Command { std: "docker" "inspect" "2f1c72acf2a47407a2e81dfb6ae1111c3b9eb15a6e132cc03488f8a657fb0a70", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f1c72acf2a47407a2e81dfb6ae1111c3b9eb15a6e132cc03488f8a657fb0a70", kill_on_drop: false }`
[INFO] [stdout] 2f1c72acf2a47407a2e81dfb6ae1111c3b9eb15a6e132cc03488f8a657fb0a70
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c9ee388662c2e683e28bf382e5f366e2a3a24093927b518deb6628625fcc8f8f
[INFO] running `Command { std: "docker" "start" "-a" "c9ee388662c2e683e28bf382e5f366e2a3a24093927b518deb6628625fcc8f8f", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_search` is never used
[INFO] [stdout]    --> src/lib.rs:179:4
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ukkonen_create` is never used
[INFO] [stdout]   --> src/ukkonen.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | enum LinkNode {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 119 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 120 |     Root,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 121 |     Internal(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 135 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stdout]    --> src/ukkonen.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:173:4
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_leaf_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AddNodeConfig` is never constructed
[INFO] [stdout]    --> src/ukkonen.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct AddNodeConfig {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stdout]    --> src/ukkonen.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 208 | struct UkkonenTree {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] 209 |     pub root: UNode,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 211 |     size: usize, // count of how many nodes
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 212 |     width: usize, // in our case will be 256
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ukkonen.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn pretty_print(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     fn inc_size(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     fn next_order(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `range` and `key` are never read
[INFO] [stdout]    --> src/ukkonen.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 490 | struct NodeConfig {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 491 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 492 |     pub key: u8
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ukkonen.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 498 | struct Range {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 499 |     pub start: usize,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 500 |     pub end: Option<usize>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling longest_bytes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: function `range_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stdout]    --> src/main.rs:119:141
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stdout]     |                                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stdout]     |                                                                                                                                             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_search_for_byte` is never used
[INFO] [stdout]    --> src/main.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `locations_from` is never used
[INFO] [stdout]    --> src/main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:33:44
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `children` is never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:163:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add_leaf`, `index_is_child`, and `is_root` are never used
[INFO] [stdout]    --> src/ukkonen.rs:298:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_start` is never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.36s
[INFO] running `Command { std: "docker" "inspect" "c9ee388662c2e683e28bf382e5f366e2a3a24093927b518deb6628625fcc8f8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c9ee388662c2e683e28bf382e5f366e2a3a24093927b518deb6628625fcc8f8f", kill_on_drop: false }`
[INFO] [stdout] c9ee388662c2e683e28bf382e5f366e2a3a24093927b518deb6628625fcc8f8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 592605fcab7b316b7637fe6d4eae0f907de90a7316fd6179af96aeabe4773181
[INFO] running `Command { std: "docker" "start" "-a" "592605fcab7b316b7637fe6d4eae0f907de90a7316fd6179af96aeabe4773181", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/suffix_tree.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> src/ukkonen.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> src/ukkonen.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/ukkonen.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[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: value assigned to `order` is never read
[INFO] [stderr]    --> src/ukkonen.rs:272:17
[INFO] [stderr]     |
[INFO] [stderr] 272 |         let mut order = 0;
[INFO] [stderr]     |                 ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `new_start` is never read
[INFO] [stderr]    --> src/ukkonen.rs:273:17
[INFO] [stderr]     |
[INFO] [stderr] 273 |         let mut new_start = 0;
[INFO] [stderr]     |                 ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `edge`
[INFO] [stderr]    --> src/ukkonen.rs:342:34
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `length`
[INFO] [stderr]    --> src/ukkonen.rs:342:44
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/ukkonen.rs:342:59
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]    --> src/ukkonen.rs:374:25
[INFO] [stderr]     |
[INFO] [stderr] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stderr]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]    --> src/ukkonen.rs:422:25
[INFO] [stderr]     |
[INFO] [stderr] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stderr]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `file_name` and `offset` are never read
[INFO] [stderr]  --> src/lib.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct FileLocation {
[INFO] [stderr]   |        ------------ fields in this struct
[INFO] [stderr] 7 |     file_name: String,
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 8 |     offset: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stderr]   --> src/lib.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl FileLocation {
[INFO] [stderr]    | ----------------- associated items in this implementation
[INFO] [stderr] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     pub fn offset(&self) -> usize {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `optimized_suffix_search` is never used
[INFO] [stderr]    --> src/lib.rs:120:4
[INFO] [stderr]     |
[INFO] [stderr] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `suffix_tree_search` is never used
[INFO] [stderr]    --> src/lib.rs:128:4
[INFO] [stderr]     |
[INFO] [stderr] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `polynomial_search` is never used
[INFO] [stderr]    --> src/lib.rs:179:4
[INFO] [stderr]     |
[INFO] [stderr] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `relative_path` is never read
[INFO] [stderr]   --> src/reader.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct ParsedFile {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 11 |     file_name: String,
[INFO] [stderr] 12 |     relative_path: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ukkonen_create` is never used
[INFO] [stderr]   --> src/ukkonen.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stderr]    --> src/ukkonen.rs:119:5
[INFO] [stderr]     |
[INFO] [stderr] 118 | enum LinkNode {
[INFO] [stderr]     |      -------- variants in this enum
[INFO] [stderr] 119 |     None,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 120 |     Root,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 121 |     Internal(usize),
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `link_to_str` is never used
[INFO] [stderr]    --> src/ukkonen.rs:124:4
[INFO] [stderr]     |
[INFO] [stderr] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stderr]    --> src/ukkonen.rs:134:9
[INFO] [stderr]     |
[INFO] [stderr] 133 | struct UNode {
[INFO] [stderr]     |        ----- fields in this struct
[INFO] [stderr] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 135 |     pub range: Range,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stderr]    --> src/ukkonen.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 141 | enum NodeType {
[INFO] [stderr]     |      -------- variants in this enum
[INFO] [stderr] 142 |     Internal,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 143 |     Extenal
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `node_type_string` is never used
[INFO] [stderr]    --> src/ukkonen.rs:146:4
[INFO] [stderr]     |
[INFO] [stderr] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stderr]    --> src/ukkonen.rs:155:12
[INFO] [stderr]     |
[INFO] [stderr] 154 | impl UNode {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn length(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unpack_range` is never used
[INFO] [stderr]    --> src/ukkonen.rs:173:4
[INFO] [stderr]     |
[INFO] [stderr] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_new_leaf_range` is never used
[INFO] [stderr]    --> src/ukkonen.rs:182:4
[INFO] [stderr]     |
[INFO] [stderr] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AddNodeConfig` is never constructed
[INFO] [stderr]    --> src/ukkonen.rs:190:8
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct AddNodeConfig {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stderr]    --> src/ukkonen.rs:209:9
[INFO] [stderr]     |
[INFO] [stderr] 208 | struct UkkonenTree {
[INFO] [stderr]     |        ----------- fields in this struct
[INFO] [stderr] 209 |     pub root: UNode,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 211 |     size: usize, // count of how many nodes
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 212 |     width: usize, // in our case will be 256
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/ukkonen.rs:220:12
[INFO] [stderr]     |
[INFO] [stderr] 215 | impl UkkonenTree {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 368 |     pub fn pretty_print(&self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 397 |     fn inc_size(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 440 |     fn next_order(&self) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `range` and `key` are never read
[INFO] [stderr]    --> src/ukkonen.rs:491:9
[INFO] [stderr]     |
[INFO] [stderr] 490 | struct NodeConfig {
[INFO] [stderr]     |        ---------- fields in this struct
[INFO] [stderr] 491 |     pub range: Range,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 492 |     pub key: u8
[INFO] [stderr]     |         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `start` and `end` are never read
[INFO] [stderr]    --> src/ukkonen.rs:499:9
[INFO] [stderr]     |
[INFO] [stderr] 498 | struct Range {
[INFO] [stderr]     |        ----- fields in this struct
[INFO] [stderr] 499 |     pub start: usize,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 500 |     pub end: Option<usize>,
[INFO] [stderr]     |         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `range_length` is never used
[INFO] [stderr]    --> src/ukkonen.rs:504:4
[INFO] [stderr]     |
[INFO] [stderr] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `range_to_str` is never used
[INFO] [stderr]    --> src/ukkonen.rs:512:4
[INFO] [stderr]     |
[INFO] [stderr] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stderr]    --> src/ukkonen.rs:521:12
[INFO] [stderr]     |
[INFO] [stderr] 520 | impl Range {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (lib) generated 34 warnings (run `cargo fix --lib -p longest_bytes` to apply 9 suggestions)
[INFO] [stderr] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stderr]    --> src/main.rs:119:141
[INFO] [stderr]     |
[INFO] [stderr] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stderr]     |                                                                   ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]     |
[INFO] [stderr] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stderr]     |                                                                                                                                             ~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: function `current_search_for_byte` is never used
[INFO] [stderr]    --> src/main.rs:162:4
[INFO] [stderr]     |
[INFO] [stderr] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `locations_from` is never used
[INFO] [stderr]    --> src/main.rs:181:4
[INFO] [stderr]     |
[INFO] [stderr] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/main.rs:33:44
[INFO] [stderr]    |
[INFO] [stderr] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stderr]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/main.rs:34:44
[INFO] [stderr]    |
[INFO] [stderr] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stderr]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (bin "longest_bytes" test) generated 5 warnings (run `cargo fix --bin "longest_bytes" --tests` to apply 3 suggestions)
[INFO] [stderr] warning: field `children` is never read
[INFO] [stderr]    --> src/ukkonen.rs:134:9
[INFO] [stderr]     |
[INFO] [stderr] 133 | struct UNode {
[INFO] [stderr]     |        ----- field in this struct
[INFO] [stderr] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `length` is never used
[INFO] [stderr]    --> src/ukkonen.rs:163:12
[INFO] [stderr]     |
[INFO] [stderr] 154 | impl UNode {
[INFO] [stderr]     | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn length(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `add_leaf`, `index_is_child`, and `is_root` are never used
[INFO] [stderr]    --> src/ukkonen.rs:298:12
[INFO] [stderr]     |
[INFO] [stderr] 215 | impl UkkonenTree {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_start` is never used
[INFO] [stderr]    --> src/ukkonen.rs:521:12
[INFO] [stderr]     |
[INFO] [stderr] 520 | impl Range {
[INFO] [stderr]     | ---------- method in this implementation
[INFO] [stderr] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (lib test) generated 23 warnings (19 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/longest_bytes-d4f50189e543e9b1)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test suffix_tree::tests::create ... ok
[INFO] [stdout] test ukkonen::tests::create_tree ... ok
[INFO] [stdout] test suffix_tree::tests::contains ... ok
[INFO] [stdout] test suffix_tree::tests::contains_sub ... ok
[INFO] [stdout] test tests::test_cubed ... FAILED
[INFO] [stdout] test tests::test_poly ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_cubed stdout ----
[INFO] [stdout] thread 'tests::test_cubed' panicked at src/reader.rs:6:21:
[INFO] [stdout] problem reading: ./sample.1
[INFO] [stdout]  No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x565506b9cf36 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x565506b9cf36 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x565506b9cf36 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x565506b9cf36 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x565506bc5d80 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x565506bc5d80 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x565506b9a99f - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x565506b9cd14 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x565506b9cd14 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x565506b9ea87 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x565506b9e76d - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x565506b6e2c7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x565506b6e2c7 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x565506b9f0a6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x565506b9f0a6 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x565506b9edf2 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x565506b9d436 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x565506b9eb50 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x565506b28cd5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x565506b36399 - longest_bytes::reader::file_as_bytes::h62e0d2a6d8f17494
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:6:21
[INFO] [stdout]   20:     0x565506b364e1 - longest_bytes::reader::ParsedFile::new::ha8d05c8f1149ea0d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:22:20
[INFO] [stdout]   21:     0x565506b395c9 - longest_bytes::tests::test_cubed::hd34320d285df1ff7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:211:23
[INFO] [stdout]   22:     0x565506b39577 - longest_bytes::tests::test_cubed::{{closure}}::h24d4bfbddccbc63e
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:210:24
[INFO] [stdout]   23:     0x565506b34146 - core::ops::function::FnOnce::call_once::ha4213571a5b0779f
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x565506b73b9f - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x565506b73b9f - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   26:     0x565506b72921 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   27:     0x565506b72921 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x565506b72921 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   29:     0x565506b72921 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   30:     0x565506b72921 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   31:     0x565506b72921 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   32:     0x565506b72921 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   33:     0x565506b39c56 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   34:     0x565506b39c56 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   35:     0x565506b3ecb7 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   36:     0x565506b3ecb7 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x565506b3ecb7 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   38:     0x565506b3ecb7 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   39:     0x565506b3ecb7 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   40:     0x565506b3ecb7 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   41:     0x565506b3ecb7 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x565506ba3b55 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   43:     0x565506ba3b55 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x565506ba3b55 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   45:     0x7fae32178ac3 - <unknown>
[INFO] [stdout]   46:     0x7fae32209bf4 - __clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_poly stdout ----
[INFO] [stdout] thread 'tests::test_poly' panicked at src/reader.rs:6:21:
[INFO] [stdout] problem reading: ./sample.1
[INFO] [stdout]  No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x565506b9cf36 - std::backtrace_rs::backtrace::libunwind::trace::hbee8a7973eeb6c93
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x565506b9cf36 - std::backtrace_rs::backtrace::trace_unsynchronized::hc8ac75eea3aa6899
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x565506b9cf36 - std::sys_common::backtrace::_print_fmt::hc7f3e3b5298b1083
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x565506b9cf36 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hbb235daedd7c6190
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x565506bc5d80 - core::fmt::rt::Argument::fmt::h76c38a80d925a410
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x565506bc5d80 - core::fmt::write::h3ed6aeaa977c8e45
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x565506b9a99f - std::io::Write::write_fmt::h1299aa7741865f2b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/io/mod.rs:1810:15
[INFO] [stdout]    7:     0x565506b9cd14 - std::sys_common::backtrace::_print::h5d645a07e0fcfdbb
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x565506b9cd14 - std::sys_common::backtrace::print::h85035a511aafe7a8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x565506b9ea87 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
[INFO] [stdout]   10:     0x565506b9e76d - std::panicking::default_hook::hf5fcb0f213fe709a
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x565506b6e2c7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h60265c2dfa87ee34
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x565506b6e2c7 - test::test_main::{{closure}}::h77865bd3127078c6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x565506b9f0a6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x565506b9f0a6 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x565506b9edf2 - std::panicking::begin_panic_handler::{{closure}}::h032ba12139b353db
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x565506b9d436 - std::sys_common::backtrace::__rust_end_short_backtrace::h9259bc2ff8fd0f76
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x565506b9eb50 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x565506b28cd5 - core::panicking::panic_fmt::h784f20a50eaab275
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x565506b36399 - longest_bytes::reader::file_as_bytes::h62e0d2a6d8f17494
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:6:21
[INFO] [stdout]   20:     0x565506b364e1 - longest_bytes::reader::ParsedFile::new::ha8d05c8f1149ea0d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:22:20
[INFO] [stdout]   21:     0x565506b397c9 - longest_bytes::tests::test_poly::h2b70887eaeacc117
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:219:23
[INFO] [stdout]   22:     0x565506b39777 - longest_bytes::tests::test_poly::{{closure}}::h90788c7d4df586e2
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:218:23
[INFO] [stdout]   23:     0x565506b341d6 - core::ops::function::FnOnce::call_once::hc18a81fe33bfc473
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x565506b73b9f - core::ops::function::FnOnce::call_once::h8dc6907944022cf6
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x565506b73b9f - test::__rust_begin_short_backtrace::haae1a87433f1efb3
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:627:18
[INFO] [stdout]   26:     0x565506b72921 - test::run_test_in_process::{{closure}}::h8c7decfa7c14e152
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:60
[INFO] [stdout]   27:     0x565506b72921 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h19e6ff056d9d21e9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x565506b72921 - std::panicking::try::do_call::h89c848fcaa37c035
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   29:     0x565506b72921 - std::panicking::try::h57ab3dc74e2839b8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   30:     0x565506b72921 - std::panic::catch_unwind::hfb6a1b1abc120fb9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   31:     0x565506b72921 - test::run_test_in_process::h5ae2f9875edd562d
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:650:27
[INFO] [stdout]   32:     0x565506b72921 - test::run_test::{{closure}}::h35d7300d8928a067
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:573:43
[INFO] [stdout]   33:     0x565506b39c56 - test::run_test::{{closure}}::h7525ced405d23d1b
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/test/src/lib.rs:601:41
[INFO] [stdout]   34:     0x565506b39c56 - std::sys_common::backtrace::__rust_begin_short_backtrace::h4e7db78ce05afad8
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   35:     0x565506b3ecb7 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hcfbcb64f1a1b3482
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   36:     0x565506b3ecb7 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9d89c5c4108bd689
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x565506b3ecb7 - std::panicking::try::do_call::h8a4869bc94ec50c9
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
[INFO] [stdout]   38:     0x565506b3ecb7 - std::panicking::try::h9a576f20ff81ac30
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
[INFO] [stdout]   39:     0x565506b3ecb7 - std::panic::catch_unwind::hbcb4e3f860ef9830
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
[INFO] [stdout]   40:     0x565506b3ecb7 - std::thread::Builder::spawn_unchecked_::{{closure}}::h93c79a6be1505948
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   41:     0x565506b3ecb7 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h426d96740c81bdaf
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x565506ba3b55 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   43:     0x565506ba3b55 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x565506ba3b55 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
[INFO] [stdout]                                at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   45:     0x7fae32178ac3 - <unknown>
[INFO] [stdout]   46:     0x7fae32209bf4 - __clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::test_cubed
[INFO] [stdout]     tests::test_poly
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 4 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "592605fcab7b316b7637fe6d4eae0f907de90a7316fd6179af96aeabe4773181", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "592605fcab7b316b7637fe6d4eae0f907de90a7316fd6179af96aeabe4773181", kill_on_drop: false }`
[INFO] [stdout] 592605fcab7b316b7637fe6d4eae0f907de90a7316fd6179af96aeabe4773181
[INFO] testing jzohdi/LCS against beta-2024-02-10 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjzohdi%2FLCS" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/jzohdi/LCS on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/jzohdi/LCS
[INFO] finished tweaking git repo https://github.com/jzohdi/LCS
[INFO] tweaked toml for git repo https://github.com/jzohdi/LCS written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/jzohdi/LCS already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a292db90dc37ea1a50f6ed0a009f82d30bfad526c4519e328beeb96fe1c45f53
[INFO] running `Command { std: "docker" "start" "-a" "a292db90dc37ea1a50f6ed0a009f82d30bfad526c4519e328beeb96fe1c45f53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a292db90dc37ea1a50f6ed0a009f82d30bfad526c4519e328beeb96fe1c45f53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a292db90dc37ea1a50f6ed0a009f82d30bfad526c4519e328beeb96fe1c45f53", kill_on_drop: false }`
[INFO] [stdout] a292db90dc37ea1a50f6ed0a009f82d30bfad526c4519e328beeb96fe1c45f53
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ce40ee4455c6681b09a69d7a7461bd1a471c81ca34541d912ee338ecfcdc653a
[INFO] running `Command { std: "docker" "start" "-a" "ce40ee4455c6681b09a69d7a7461bd1a471c81ca34541d912ee338ecfcdc653a", kill_on_drop: false }`
[INFO] [stderr]    Compiling longest_bytes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_search` is never used
[INFO] [stdout]    --> src/lib.rs:179:4
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ukkonen_create` is never used
[INFO] [stdout]   --> src/ukkonen.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | enum LinkNode {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 119 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 120 |     Root,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 121 |     Internal(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 135 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stdout]    --> src/ukkonen.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:173:4
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_leaf_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AddNodeConfig` is never constructed
[INFO] [stdout]    --> src/ukkonen.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct AddNodeConfig {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stdout]    --> src/ukkonen.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 208 | struct UkkonenTree {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] 209 |     pub root: UNode,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 211 |     size: usize, // count of how many nodes
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 212 |     width: usize, // in our case will be 256
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ukkonen.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn pretty_print(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     fn inc_size(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     fn next_order(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `range` and `key` are never read
[INFO] [stdout]    --> src/ukkonen.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 490 | struct NodeConfig {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 491 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 492 |     pub key: u8
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ukkonen.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 498 | struct Range {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 499 |     pub start: usize,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 500 |     pub end: Option<usize>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stdout]    --> src/main.rs:119:141
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stdout]     |                                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stdout]     |                                                                                                                                             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_search_for_byte` is never used
[INFO] [stdout]    --> src/main.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `locations_from` is never used
[INFO] [stdout]    --> src/main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:33:44
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.43s
[INFO] running `Command { std: "docker" "inspect" "ce40ee4455c6681b09a69d7a7461bd1a471c81ca34541d912ee338ecfcdc653a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce40ee4455c6681b09a69d7a7461bd1a471c81ca34541d912ee338ecfcdc653a", kill_on_drop: false }`
[INFO] [stdout] ce40ee4455c6681b09a69d7a7461bd1a471c81ca34541d912ee338ecfcdc653a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7f0857a8fdd865290acf9d167237f7fab3f10190bc93351e7ad3c5e251d28b3b
[INFO] running `Command { std: "docker" "start" "-a" "7f0857a8fdd865290acf9d167237f7fab3f10190bc93351e7ad3c5e251d28b3b", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `polynomial_search` is never used
[INFO] [stdout]    --> src/lib.rs:179:4
[INFO] [stdout]     |
[INFO] [stdout] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ukkonen_create` is never used
[INFO] [stdout]   --> src/ukkonen.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 118 | enum LinkNode {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 119 |     None,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 120 |     Root,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 121 |     Internal(usize),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `link_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:124:4
[INFO] [stdout]     |
[INFO] [stdout] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 135 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stdout]    --> src/ukkonen.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unpack_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:173:4
[INFO] [stdout]     |
[INFO] [stdout] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_new_leaf_range` is never used
[INFO] [stdout]    --> src/ukkonen.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AddNodeConfig` is never constructed
[INFO] [stdout]    --> src/ukkonen.rs:190:8
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct AddNodeConfig {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stdout]    --> src/ukkonen.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 208 | struct UkkonenTree {
[INFO] [stdout]     |        ----------- fields in this struct
[INFO] [stdout] 209 |     pub root: UNode,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 211 |     size: usize, // count of how many nodes
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 212 |     width: usize, // in our case will be 256
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/ukkonen.rs:220:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub fn pretty_print(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     fn inc_size(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     fn next_order(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `range` and `key` are never read
[INFO] [stdout]    --> src/ukkonen.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 490 | struct NodeConfig {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 491 |     pub range: Range,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 492 |     pub key: u8
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling longest_bytes v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: fields `start` and `end` are never read
[INFO] [stdout]    --> src/ukkonen.rs:499:9
[INFO] [stdout]     |
[INFO] [stdout] 498 | struct Range {
[INFO] [stdout]     |        ----- fields in this struct
[INFO] [stdout] 499 |     pub start: usize,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 500 |     pub end: Option<usize>,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_to_str` is never used
[INFO] [stdout]    --> src/ukkonen.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/suffix_tree.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> src/ukkonen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cell::RefCell`
[INFO] [stdout]  --> src/ukkonen.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::cell::RefCell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stdout]    --> src/main.rs:119:141
[INFO] [stdout]     |
[INFO] [stdout] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stdout]     |                                                                   ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stdout]     |                                                                                                                                             ~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `current_search_for_byte` is never used
[INFO] [stdout]    --> src/main.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `locations_from` is never used
[INFO] [stdout]    --> src/main.rs:181:4
[INFO] [stdout]     |
[INFO] [stdout] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:33:44
[INFO] [stdout]    |
[INFO] [stdout] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/main.rs:34:44
[INFO] [stdout]    |
[INFO] [stdout] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stdout]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/ukkonen.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `order` is never read
[INFO] [stdout]    --> src/ukkonen.rs:272:17
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let mut order = 0;
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `new_start` is never read
[INFO] [stdout]    --> src/ukkonen.rs:273:17
[INFO] [stdout]     |
[INFO] [stdout] 273 |         let mut new_start = 0;
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `edge`
[INFO] [stdout]    --> src/ukkonen.rs:342:34
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/ukkonen.rs:342:44
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/ukkonen.rs:342:59
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:374:25
[INFO] [stdout]     |
[INFO] [stdout] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]    --> src/ukkonen.rs:422:25
[INFO] [stdout]     |
[INFO] [stdout] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stdout]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `file_name` and `offset` are never read
[INFO] [stdout]  --> src/lib.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | struct FileLocation {
[INFO] [stdout]   |        ------------ fields in this struct
[INFO] [stdout] 7 |     file_name: String,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 8 |     offset: usize,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stdout]   --> src/lib.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl FileLocation {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub fn offset(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `optimized_suffix_search` is never used
[INFO] [stdout]    --> src/lib.rs:120:4
[INFO] [stdout]     |
[INFO] [stdout] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `suffix_tree_search` is never used
[INFO] [stdout]    --> src/lib.rs:128:4
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `relative_path` is never read
[INFO] [stdout]   --> src/reader.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ParsedFile {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 11 |     file_name: String,
[INFO] [stdout] 12 |     relative_path: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `children` is never read
[INFO] [stdout]    --> src/ukkonen.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct UNode {
[INFO] [stdout]     |        ----- field in this struct
[INFO] [stdout] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stdout]    --> src/ukkonen.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 141 | enum NodeType {
[INFO] [stdout]     |      -------- variants in this enum
[INFO] [stdout] 142 |     Internal,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 143 |     Extenal
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `node_type_string` is never used
[INFO] [stdout]    --> src/ukkonen.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:163:12
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl UNode {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 163 |     pub fn length(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `add_leaf`, `index_is_child`, and `is_root` are never used
[INFO] [stdout]    --> src/ukkonen.rs:298:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl UkkonenTree {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `range_length` is never used
[INFO] [stdout]    --> src/ukkonen.rs:504:4
[INFO] [stdout]     |
[INFO] [stdout] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_start` is never used
[INFO] [stdout]    --> src/ukkonen.rs:521:12
[INFO] [stdout]     |
[INFO] [stdout] 520 | impl Range {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.34s
[INFO] running `Command { std: "docker" "inspect" "7f0857a8fdd865290acf9d167237f7fab3f10190bc93351e7ad3c5e251d28b3b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7f0857a8fdd865290acf9d167237f7fab3f10190bc93351e7ad3c5e251d28b3b", kill_on_drop: false }`
[INFO] [stdout] 7f0857a8fdd865290acf9d167237f7fab3f10190bc93351e7ad3c5e251d28b3b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6ac6ce510d5b35daf23e62f5cd9f32d8a8c642e68fb767fcfc4106781828a33f
[INFO] running `Command { std: "docker" "start" "-a" "6ac6ce510d5b35daf23e62f5cd9f32d8a8c642e68fb767fcfc4106781828a33f", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/suffix_tree.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::rc::Rc`
[INFO] [stderr]  --> src/ukkonen.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use std::rc::Rc;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::cell::RefCell`
[INFO] [stderr]  --> src/ukkonen.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use std::cell::RefCell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/ukkonen.rs:23:9
[INFO] [stderr]    |
[INFO] [stderr] 23 |     let mut active_node: Option<usize> = None;   // current node being looked at, None means root
[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: value assigned to `order` is never read
[INFO] [stderr]    --> src/ukkonen.rs:272:17
[INFO] [stderr]     |
[INFO] [stderr] 272 |         let mut order = 0;
[INFO] [stderr]     |                 ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `new_start` is never read
[INFO] [stderr]    --> src/ukkonen.rs:273:17
[INFO] [stderr]     |
[INFO] [stderr] 273 |         let mut new_start = 0;
[INFO] [stderr]     |                 ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `edge`
[INFO] [stderr]    --> src/ukkonen.rs:342:34
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                  ^^^^ help: if this is intentional, prefix it with an underscore: `_edge`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `length`
[INFO] [stderr]    --> src/ukkonen.rs:342:44
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `key`
[INFO] [stderr]    --> src/ukkonen.rs:342:59
[INFO] [stderr]     |
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |                                                           ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]    --> src/ukkonen.rs:374:25
[INFO] [stderr]     |
[INFO] [stderr] 374 |             if let Some(n) = &self.nodes[i] {
[INFO] [stderr]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n`
[INFO] [stderr]    --> src/ukkonen.rs:422:25
[INFO] [stderr]     |
[INFO] [stderr] 422 |             if let Some(n) = &self.nodes[i] {
[INFO] [stderr]     |                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stderr] 
[INFO] [stderr] warning: fields `file_name` and `offset` are never read
[INFO] [stderr]  --> src/lib.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct FileLocation {
[INFO] [stderr]   |        ------------ fields in this struct
[INFO] [stderr] 7 |     file_name: String,
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr] 8 |     offset: usize,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `FileLocation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]   = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `set_offset`, and `offset` are never used
[INFO] [stderr]   --> src/lib.rs:12:12
[INFO] [stderr]    |
[INFO] [stderr] 11 | impl FileLocation {
[INFO] [stderr]    | ----------------- associated items in this implementation
[INFO] [stderr] 12 |     pub fn new(filename: &str) -> FileLocation {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub fn set_offset(&mut self, offset: usize) {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     pub fn offset(&self) -> usize {
[INFO] [stderr]    |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `optimized_suffix_search` is never used
[INFO] [stderr]    --> src/lib.rs:120:4
[INFO] [stderr]     |
[INFO] [stderr] 120 | fn optimized_suffix_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult  {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `suffix_tree_search` is never used
[INFO] [stderr]    --> src/lib.rs:128:4
[INFO] [stderr]     |
[INFO] [stderr] 128 | fn suffix_tree_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `polynomial_search` is never used
[INFO] [stderr]    --> src/lib.rs:179:4
[INFO] [stderr]     |
[INFO] [stderr] 179 | fn polynomial_search(file1: &reader::ParsedFile, file2: &reader::ParsedFile) -> SearchResult {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `relative_path` is never read
[INFO] [stderr]   --> src/reader.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | pub struct ParsedFile {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 11 |     file_name: String,
[INFO] [stderr] 12 |     relative_path: String,
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `ukkonen_create` is never used
[INFO] [stderr]   --> src/ukkonen.rs:18:8
[INFO] [stderr]    |
[INFO] [stderr] 18 | pub fn ukkonen_create(array: &Vec<u8>) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `None`, `Root`, and `Internal` are never constructed
[INFO] [stderr]    --> src/ukkonen.rs:119:5
[INFO] [stderr]     |
[INFO] [stderr] 118 | enum LinkNode {
[INFO] [stderr]     |      -------- variants in this enum
[INFO] [stderr] 119 |     None,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 120 |     Root,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 121 |     Internal(usize),
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `LinkNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `link_to_str` is never used
[INFO] [stderr]    --> src/ukkonen.rs:124:4
[INFO] [stderr]     |
[INFO] [stderr] 124 | fn link_to_str(link: &LinkNode) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `children`, `range`, `link`, and `order` are never read
[INFO] [stderr]    --> src/ukkonen.rs:134:9
[INFO] [stderr]     |
[INFO] [stderr] 133 | struct UNode {
[INFO] [stderr]     |        ----- fields in this struct
[INFO] [stderr] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 135 |     pub range: Range,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 136 |     pub link: LinkNode, // location in NodeStore
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 137 |     pub order: usize, // represents the range in NodeStore, it's children are in.
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Internal` and `Extenal` are never constructed
[INFO] [stderr]    --> src/ukkonen.rs:142:5
[INFO] [stderr]     |
[INFO] [stderr] 141 | enum NodeType {
[INFO] [stderr]     |      -------- variants in this enum
[INFO] [stderr] 142 |     Internal,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr] 143 |     Extenal
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NodeType` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `node_type_string` is never used
[INFO] [stderr]    --> src/ukkonen.rs:146:4
[INFO] [stderr]     |
[INFO] [stderr] 146 | fn node_type_string(range: &Range) -> NodeType {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `length`, and `set_link` are never used
[INFO] [stderr]    --> src/ukkonen.rs:155:12
[INFO] [stderr]     |
[INFO] [stderr] 154 | impl UNode {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr] 155 |     pub fn new(range: Range, link: LinkNode, order: usize) -> UNode {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn length(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 167 |     pub fn set_link(&mut self, link: LinkNode) {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `unpack_range` is never used
[INFO] [stderr]    --> src/ukkonen.rs:173:4
[INFO] [stderr]     |
[INFO] [stderr] 173 | fn unpack_range(range: &Range) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_new_leaf_range` is never used
[INFO] [stderr]    --> src/ukkonen.rs:182:4
[INFO] [stderr]     |
[INFO] [stderr] 182 | fn get_new_leaf_range(curr_node_range: &Range, end: usize) -> Range {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AddNodeConfig` is never constructed
[INFO] [stderr]    --> src/ukkonen.rs:190:8
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct AddNodeConfig {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `root`, `nodes`, `size`, and `width` are never read
[INFO] [stderr]    --> src/ukkonen.rs:209:9
[INFO] [stderr]     |
[INFO] [stderr] 208 | struct UkkonenTree {
[INFO] [stderr]     |        ----------- fields in this struct
[INFO] [stderr] 209 |     pub root: UNode,
[INFO] [stderr]     |         ^^^^
[INFO] [stderr] 210 |     nodes: Vec<Option<UNode>>,
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr] 211 |     size: usize, // count of how many nodes
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] 212 |     width: usize, // in our case will be 256
[INFO] [stderr]     |     ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UkkonenTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple associated items are never used
[INFO] [stderr]    --> src/ukkonen.rs:220:12
[INFO] [stderr]     |
[INFO] [stderr] 215 | impl UkkonenTree {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 220 |     pub fn new() -> UkkonenTree {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 238 |     pub fn update_link(&mut self, from: usize, to: usize) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 262 |     pub fn add_node(&mut self, node_key: Option<usize>, child_key: u8, config: AddNodeConfig) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 271 |     pub fn split_node(self: &'_ mut Self, node_key: usize, config: &AddNodeConfig) {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 287 |     fn new_leaf(self: &'_ mut Self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 311 |     pub fn add_leaf_to(&mut self, active_node: Option<usize>, child_key: u8, end: usize) {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 323 |     pub fn represented_index(&self, active_node: Option<usize>, active_edge: u8, length: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 353 |     pub fn node_has_child(&self, active_node: Option<usize>, item_to_check: u8) -> bool {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 361 |     pub fn get_node_range(&self, node_index: Option<usize>) -> Range {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 368 |     pub fn pretty_print(&self) {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 389 |      fn create_leaf_for(&mut self, node_pos: Option<usize>, child_config: NodeConfig) {
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 397 |     fn inc_size(&mut self) {
[INFO] [stderr]     |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 402 |     fn print(&self, curr_node_index: usize, depth: usize) {
[INFO] [stderr]     |        ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 431 |      fn has_child(&self, node_pos: Option<usize>, child_key: u8) -> bool {
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 440 |     fn next_order(&self) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 444 |     fn hash(&self, node_order: usize, key: u8) -> usize {
[INFO] [stderr]     |        ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 448 |     fn get_node_order(&self, node_index: Option<usize>) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 454 |     pub fn node_range(&self, node_index: usize) -> Range {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 458 |     fn edge_is_leaf(&self, node_key: Option<usize>, child_key: u8) -> bool  {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 468 |     fn is_leaf(&self, key: usize) -> bool {
[INFO] [stderr]     |        ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 475 |     fn child_hash(&self, node_key: Option<usize>, child_key: u8) -> usize {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `range` and `key` are never read
[INFO] [stderr]    --> src/ukkonen.rs:491:9
[INFO] [stderr]     |
[INFO] [stderr] 490 | struct NodeConfig {
[INFO] [stderr]     |        ---------- fields in this struct
[INFO] [stderr] 491 |     pub range: Range,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 492 |     pub key: u8
[INFO] [stderr]     |         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `NodeConfig` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `start` and `end` are never read
[INFO] [stderr]    --> src/ukkonen.rs:499:9
[INFO] [stderr]     |
[INFO] [stderr] 498 | struct Range {
[INFO] [stderr]     |        ----- fields in this struct
[INFO] [stderr] 499 |     pub start: usize,
[INFO] [stderr]     |         ^^^^^
[INFO] [stderr] 500 |     pub end: Option<usize>,
[INFO] [stderr]     |         ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `Range` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: function `range_length` is never used
[INFO] [stderr]    --> src/ukkonen.rs:504:4
[INFO] [stderr]     |
[INFO] [stderr] 504 | fn range_length(range: &Range) -> usize {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `range_to_str` is never used
[INFO] [stderr]    --> src/ukkonen.rs:512:4
[INFO] [stderr]     |
[INFO] [stderr] 512 | fn range_to_str(range: &Range) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `set_start`, `set_end`, `get_start`, and `clone` are never used
[INFO] [stderr]    --> src/ukkonen.rs:521:12
[INFO] [stderr]     |
[INFO] [stderr] 520 | impl Range {
[INFO] [stderr]     | ---------- associated items in this implementation
[INFO] [stderr] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 524 |     pub fn set_end(&mut self, end: Option<usize>) {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 527 |     pub fn get_start(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 531 |     pub fn clone(range: &Range) -> Range {
[INFO] [stderr]     |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (lib) generated 34 warnings (run `cargo fix --lib -p longest_bytes` to apply 9 suggestions)
[INFO] [stderr] warning: use of deprecated method `std::slice::<impl [T]>::connect`: renamed to join
[INFO] [stderr]    --> src/main.rs:119:141
[INFO] [stderr]     |
[INFO] [stderr] 119 | ...sition {}", s.filename, s.start_pos)).collect::<Vec<String>>().connect("\n"));
[INFO] [stderr]     |                                                                   ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]     |
[INFO] [stderr] 119 |     println!("Files found in:\n{}", find_all.iter().map(|s| format!("{} at position {}", s.filename, s.start_pos)).collect::<Vec<String>>().join("\n"));
[INFO] [stderr]     |                                                                                                                                             ~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: function `current_search_for_byte` is never used
[INFO] [stderr]    --> src/main.rs:162:4
[INFO] [stderr]     |
[INFO] [stderr] 162 | fn current_search_for_byte(search_for: &SearchFor, offset: usize) -> u8 {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `locations_from` is never used
[INFO] [stderr]    --> src/main.rs:181:4
[INFO] [stderr]     |
[INFO] [stderr] 181 | fn locations_from(max_res: &SearchResult) -> Vec<SequenceLocation>{
[INFO] [stderr]     |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/main.rs:33:44
[INFO] [stderr]    |
[INFO] [stderr] 33 |             let filename1 = parsed_files[i].clone();
[INFO] [stderr]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/main.rs:34:44
[INFO] [stderr]    |
[INFO] [stderr] 34 |             let filename2 = parsed_files[j].clone();
[INFO] [stderr]    |                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (bin "longest_bytes" test) generated 5 warnings (run `cargo fix --bin "longest_bytes" --tests` to apply 3 suggestions)
[INFO] [stderr] warning: field `children` is never read
[INFO] [stderr]    --> src/ukkonen.rs:134:9
[INFO] [stderr]     |
[INFO] [stderr] 133 | struct UNode {
[INFO] [stderr]     |        ----- field in this struct
[INFO] [stderr] 134 |     pub children: Vec<usize>, // the children will be the location of the child in NodeStore
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `UNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `length` is never used
[INFO] [stderr]    --> src/ukkonen.rs:163:12
[INFO] [stderr]     |
[INFO] [stderr] 154 | impl UNode {
[INFO] [stderr]     | ---------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 163 |     pub fn length(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `add_leaf`, `index_is_child`, and `is_root` are never used
[INFO] [stderr]    --> src/ukkonen.rs:298:12
[INFO] [stderr]     |
[INFO] [stderr] 215 | impl UkkonenTree {
[INFO] [stderr]     | ---------------- associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 298 |     pub fn add_leaf(&mut self, order: usize, key: u8, start: usize) -> usize {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 342 |     pub fn index_is_child(&self, edge: u8, length: usize, key: u8) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 357 |     pub fn is_root(node: &UNode) -> bool {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `set_start` is never used
[INFO] [stderr]    --> src/ukkonen.rs:521:12
[INFO] [stderr]     |
[INFO] [stderr] 520 | impl Range {
[INFO] [stderr]     | ---------- method in this implementation
[INFO] [stderr] 521 |     pub fn set_start(&mut self, start: usize) {
[INFO] [stderr]     |            ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `longest_bytes` (lib test) generated 23 warnings (19 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/longest_bytes-26e1f5a893f38b58)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test suffix_tree::tests::create ... ok
[INFO] [stdout] test ukkonen::tests::create_tree ... ok
[INFO] [stdout] test suffix_tree::tests::contains ... ok
[INFO] [stdout] test suffix_tree::tests::contains_sub ... ok
[INFO] [stdout] test tests::test_poly ... FAILED
[INFO] [stdout] test tests::test_cubed ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_poly stdout ----
[INFO] [stdout] thread 'tests::test_poly' panicked at src/reader.rs:6:21:
[INFO] [stdout] problem reading: ./sample.1
[INFO] [stdout]  No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5612c9d187e6 - std::backtrace_rs::backtrace::libunwind::trace::h140b6deb6a45c671
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x5612c9d187e6 - std::backtrace_rs::backtrace::trace_unsynchronized::h8450d7e4e9219aed
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5612c9d187e6 - std::sys_common::backtrace::_print_fmt::hbd28e5e6c6fc3a3f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x5612c9d187e6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb058f285768cf98e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5612c9d41460 - core::fmt::rt::Argument::fmt::h87dec7a95127da24
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x5612c9d41460 - core::fmt::write::h873f89a91a4832db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x5612c9d1603f - std::io::Write::write_fmt::h90f651e9e694a4bb
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/io/mod.rs:1846:15
[INFO] [stdout]    7:     0x5612c9d185c4 - std::sys_common::backtrace::_print::h7719d1529d9a9e13
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x5612c9d185c4 - std::sys_common::backtrace::print::haa3afbd0e7947108
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x5612c9d1a337 - std::panicking::default_hook::{{closure}}::h10e3de2ec0eaff22
[INFO] [stdout]   10:     0x5612c9d1a01d - std::panicking::default_hook::hbdc1b1b7fe073dab
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x5612c9ce97a7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h20f7887d7cd0a330
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x5612c9ce97a7 - test::test_main::{{closure}}::hc125a615957b5cb1
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x5612c9d1a956 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h8c19e0590f8443c4
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x5612c9d1a956 - std::panicking::rust_panic_with_hook::hb81692602460473d
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:785:13
[INFO] [stdout]   15:     0x5612c9d1a6a2 - std::panicking::begin_panic_handler::{{closure}}::h2470593aa2678e9c
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:659:13
[INFO] [stdout]   16:     0x5612c9d18ce6 - std::sys_common::backtrace::__rust_end_short_backtrace::h560bb50225b0562b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x5612c9d1a3f4 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:647:5
[INFO] [stdout]   18:     0x5612c9ca4775 - core::panicking::panic_fmt::h29b6f262f6458dc3
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x5612c9ca9909 - longest_bytes::reader::file_as_bytes::hfa0ef9eb00733729
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:6:21
[INFO] [stdout]   20:     0x5612c9ca9a51 - longest_bytes::reader::ParsedFile::new::he011b25884264ab7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:22:20
[INFO] [stdout]   21:     0x5612c9cb5199 - longest_bytes::tests::test_poly::he071221d45bcfc0f
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:219:23
[INFO] [stdout]   22:     0x5612c9cb5147 - longest_bytes::tests::test_poly::{{closure}}::hd077307f5932f132
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:218:23
[INFO] [stdout]   23:     0x5612c9ca5956 - core::ops::function::FnOnce::call_once::hdec104fb93b07148
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5612c9cef39f - core::ops::function::FnOnce::call_once::h692fe6f34484199f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5612c9cef39f - test::__rust_begin_short_backtrace::h48b62e76bd60e2de
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:621:18
[INFO] [stdout]   26:     0x5612c9cee1c1 - test::run_test_in_process::{{closure}}::h1c68597526ef43db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:60
[INFO] [stdout]   27:     0x5612c9cee1c1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hcae98092997f976b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x5612c9cee1c1 - std::panicking::try::do_call::h8d1548c2f5bb535a
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   29:     0x5612c9cee1c1 - std::panicking::try::hbb7a2054f484688e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   30:     0x5612c9cee1c1 - std::panic::catch_unwind::h696d12d9d80497c2
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   31:     0x5612c9cee1c1 - test::run_test_in_process::h053367a7217c825b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:27
[INFO] [stdout]   32:     0x5612c9cee1c1 - test::run_test::{{closure}}::hfa524e9fabcba78e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:567:43
[INFO] [stdout]   33:     0x5612c9cb5626 - test::run_test::{{closure}}::h2c4d0bb741ef7f9f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:595:41
[INFO] [stdout]   34:     0x5612c9cb5626 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0d2c708415550075
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   35:     0x5612c9cba5e7 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h76e2635840d7293f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   36:     0x5612c9cba5e7 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::haa640b67a810a214
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x5612c9cba5e7 - std::panicking::try::do_call::h41892e3bc2807ab5
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   38:     0x5612c9cba5e7 - std::panicking::try::h861a16d180681c80
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   39:     0x5612c9cba5e7 - std::panic::catch_unwind::h8195f9064b1509fa
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   40:     0x5612c9cba5e7 - std::thread::Builder::spawn_unchecked_::{{closure}}::h73cc419da1217371
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   41:     0x5612c9cba5e7 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h79dc6499ff073b09
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5612c9d1ecf5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha718e8cdc51a5182
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   43:     0x5612c9d1ecf5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h86072abc877c5474
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x5612c9d1ecf5 - std::sys::pal::unix::thread::Thread::new::thread_start::hac4056197c365894
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   45:     0x7f7ca52d4ac3 - <unknown>
[INFO] [stdout]   46:     0x7f7ca5365bf4 - __clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- tests::test_cubed stdout ----
[INFO] [stdout] thread 'tests::test_cubed' panicked at src/reader.rs:6:21:
[INFO] [stdout] problem reading: ./sample.1
[INFO] [stdout]  No such file or directory (os error 2)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5612c9d187e6 - std::backtrace_rs::backtrace::libunwind::trace::h140b6deb6a45c671
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x5612c9d187e6 - std::backtrace_rs::backtrace::trace_unsynchronized::h8450d7e4e9219aed
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5612c9d187e6 - std::sys_common::backtrace::_print_fmt::hbd28e5e6c6fc3a3f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x5612c9d187e6 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb058f285768cf98e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5612c9d41460 - core::fmt::rt::Argument::fmt::h87dec7a95127da24
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x5612c9d41460 - core::fmt::write::h873f89a91a4832db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x5612c9d1603f - std::io::Write::write_fmt::h90f651e9e694a4bb
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/io/mod.rs:1846:15
[INFO] [stdout]    7:     0x5612c9d185c4 - std::sys_common::backtrace::_print::h7719d1529d9a9e13
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x5612c9d185c4 - std::sys_common::backtrace::print::haa3afbd0e7947108
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x5612c9d1a337 - std::panicking::default_hook::{{closure}}::h10e3de2ec0eaff22
[INFO] [stdout]   10:     0x5612c9d1a01d - std::panicking::default_hook::hbdc1b1b7fe073dab
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x5612c9ce97a7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h20f7887d7cd0a330
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   12:     0x5612c9ce97a7 - test::test_main::{{closure}}::hc125a615957b5cb1
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x5612c9d1a956 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h8c19e0590f8443c4
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2029:9
[INFO] [stdout]   14:     0x5612c9d1a956 - std::panicking::rust_panic_with_hook::hb81692602460473d
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:785:13
[INFO] [stdout]   15:     0x5612c9d1a6a2 - std::panicking::begin_panic_handler::{{closure}}::h2470593aa2678e9c
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:659:13
[INFO] [stdout]   16:     0x5612c9d18ce6 - std::sys_common::backtrace::__rust_end_short_backtrace::h560bb50225b0562b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x5612c9d1a3f4 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:647:5
[INFO] [stdout]   18:     0x5612c9ca4775 - core::panicking::panic_fmt::h29b6f262f6458dc3
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x5612c9ca9909 - longest_bytes::reader::file_as_bytes::hfa0ef9eb00733729
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:6:21
[INFO] [stdout]   20:     0x5612c9ca9a51 - longest_bytes::reader::ParsedFile::new::he011b25884264ab7
[INFO] [stdout]                                at /opt/rustwide/workdir/src/reader.rs:22:20
[INFO] [stdout]   21:     0x5612c9cb4f99 - longest_bytes::tests::test_cubed::ha4146717d3edff07
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:211:23
[INFO] [stdout]   22:     0x5612c9cb4f47 - longest_bytes::tests::test_cubed::{{closure}}::hb6a72325a39e1c86
[INFO] [stdout]                                at /opt/rustwide/workdir/src/lib.rs:210:24
[INFO] [stdout]   23:     0x5612c9ca5896 - core::ops::function::FnOnce::call_once::h990e6ae404584909
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5612c9cef39f - core::ops::function::FnOnce::call_once::h692fe6f34484199f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5612c9cef39f - test::__rust_begin_short_backtrace::h48b62e76bd60e2de
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:621:18
[INFO] [stdout]   26:     0x5612c9cee1c1 - test::run_test_in_process::{{closure}}::h1c68597526ef43db
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:60
[INFO] [stdout]   27:     0x5612c9cee1c1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hcae98092997f976b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   28:     0x5612c9cee1c1 - std::panicking::try::do_call::h8d1548c2f5bb535a
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   29:     0x5612c9cee1c1 - std::panicking::try::hbb7a2054f484688e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   30:     0x5612c9cee1c1 - std::panic::catch_unwind::h696d12d9d80497c2
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   31:     0x5612c9cee1c1 - test::run_test_in_process::h053367a7217c825b
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:644:27
[INFO] [stdout]   32:     0x5612c9cee1c1 - test::run_test::{{closure}}::hfa524e9fabcba78e
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:567:43
[INFO] [stdout]   33:     0x5612c9cb5626 - test::run_test::{{closure}}::h2c4d0bb741ef7f9f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/test/src/lib.rs:595:41
[INFO] [stdout]   34:     0x5612c9cb5626 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0d2c708415550075
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   35:     0x5612c9cba5e7 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h76e2635840d7293f
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   36:     0x5612c9cba5e7 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::haa640b67a810a214
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   37:     0x5612c9cba5e7 - std::panicking::try::do_call::h41892e3bc2807ab5
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:554:40
[INFO] [stdout]   38:     0x5612c9cba5e7 - std::panicking::try::h861a16d180681c80
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panicking.rs:518:19
[INFO] [stdout]   39:     0x5612c9cba5e7 - std::panic::catch_unwind::h8195f9064b1509fa
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/panic.rs:142:14
[INFO] [stdout]   40:     0x5612c9cba5e7 - std::thread::Builder::spawn_unchecked_::{{closure}}::h73cc419da1217371
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   41:     0x5612c9cba5e7 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h79dc6499ff073b09
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5612c9d1ecf5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha718e8cdc51a5182
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   43:     0x5612c9d1ecf5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h86072abc877c5474
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/alloc/src/boxed.rs:2015:9
[INFO] [stdout]   44:     0x5612c9d1ecf5 - std::sys::pal::unix::thread::Thread::new::thread_start::hac4056197c365894
[INFO] [stdout]                                at /rustc/f2048098a1ca42a520e7bed68e321a66edc0a1b1/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   45:     0x7f7ca52d4ac3 - <unknown>
[INFO] [stdout]   46:     0x7f7ca5365bf4 - __clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::test_cubed
[INFO] [stdout]     tests::test_poly
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 4 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "6ac6ce510d5b35daf23e62f5cd9f32d8a8c642e68fb767fcfc4106781828a33f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ac6ce510d5b35daf23e62f5cd9f32d8a8c642e68fb767fcfc4106781828a33f", kill_on_drop: false }`
[INFO] [stdout] 6ac6ce510d5b35daf23e62f5cd9f32d8a8c642e68fb767fcfc4106781828a33f
