Dec 17 19:47:49.355 INFO checking megesdal/bedtree-rs against master#96d1334e567237b1507cd277938e7ae2de75ff51 for pr-54252 Dec 17 19:47:49.355 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-54252/worker-7/master#96d1334e567237b1507cd277938e7ae2de75ff51:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-54252/sources/master#96d1334e567237b1507cd277938e7ae2de75ff51/gh/megesdal/bedtree-rs:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+96d1334e567237b1507cd277938e7ae2de75ff51-alt" "check" "--frozen" "--all" "--all-targets"` Dec 17 19:47:49.681 INFO [stdout] acceb0a084060368da0ee226d7ef61cd50b155b955e5d5691cced2759d1f3072 Dec 17 19:47:49.684 INFO running `"docker" "start" "-a" "acceb0a084060368da0ee226d7ef61cd50b155b955e5d5691cced2759d1f3072"` Dec 17 19:47:50.260 INFO [stderr] Checking hello_world v0.0.1 (/opt/crater/workdir) Dec 17 19:47:50.424 INFO [stderr] warning: unused import: `max` Dec 17 19:47:50.425 INFO [stderr] --> src/main.rs:2:16 Dec 17 19:47:50.425 INFO [stderr] | Dec 17 19:47:50.425 INFO [stderr] 2 | use std::cmp::{max, min, Ordering}; Dec 17 19:47:50.425 INFO [stderr] | ^^^ Dec 17 19:47:50.425 INFO [stderr] | Dec 17 19:47:50.425 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 17 19:47:50.425 INFO [stderr] Dec 17 19:47:50.516 INFO [stderr] warning: unused variable: `node_to_insert` Dec 17 19:47:50.516 INFO [stderr] --> src/main.rs:114:14 Dec 17 19:47:50.516 INFO [stderr] | Dec 17 19:47:50.516 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 17 19:47:50.516 INFO [stderr] | ^^^^^^^^^^^^^^ help: consider using `_node_to_insert` instead Dec 17 19:47:50.516 INFO [stderr] | Dec 17 19:47:50.516 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 17 19:47:50.516 INFO [stderr] Dec 17 19:47:50.516 INFO [stderr] warning: unused variable: `insert_idx` Dec 17 19:47:50.517 INFO [stderr] --> src/main.rs:114:30 Dec 17 19:47:50.517 INFO [stderr] | Dec 17 19:47:50.517 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 17 19:47:50.517 INFO [stderr] | ^^^^^^^^^^ help: consider using `_insert_idx` instead Dec 17 19:47:50.517 INFO [stderr] Dec 17 19:47:50.517 INFO [stderr] warning: unused variable: `q` Dec 17 19:47:50.517 INFO [stderr] --> src/main.rs:125:68 Dec 17 19:47:50.517 INFO [stderr] | Dec 17 19:47:50.517 INFO [stderr] 125 | fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 17 19:47:50.517 INFO [stderr] | ^ help: consider using `_q` instead Dec 17 19:47:50.517 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: struct is never constructed: `BPlusTree` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:42:1 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 42 | struct BPlusTree<'a> { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: struct is never constructed: `BPlusTreeNode` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:48:1 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 48 | struct BPlusTreeNode<'a> { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: method is never used: `is_leaf_node` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:57:5 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 57 | fn is_leaf_node(&self) -> bool { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: method is never used: `insert` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:64:5 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 64 | fn insert(&'a self, q: &str) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: method is never used: `find_node` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:70:5 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 70 | fn find_node(&'a self, q: &str, node: &'a BPlusTreeNode<'a>) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: function is never used: `check_split` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:75:13 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 75 | / fn check_split<'a>(tree: &'a BPlusTree<'a>, q: &str, node: &'a BPlusTreeNode<'a>, Dec 17 19:47:50.533 INFO [stderr] 76 | | child_idx: usize) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.533 INFO [stderr] 77 | | if child_idx == node.splits.len() { Dec 17 19:47:50.533 INFO [stderr] 78 | | tree.find_node(q, &node.children[node.splits.len()]) Dec 17 19:47:50.533 INFO [stderr] ... | Dec 17 19:47:50.533 INFO [stderr] 83 | | } Dec 17 19:47:50.533 INFO [stderr] 84 | | }; Dec 17 19:47:50.533 INFO [stderr] | |_____________^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: method is never used: `rec_insert` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:89:5 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 89 | / fn rec_insert(&'a self, q: &str, parent: &'a BPlusTreeNode<'a>, Dec 17 19:47:50.533 INFO [stderr] 90 | | child: Option<&'a BPlusTreeNode>) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.533 INFO [stderr] 91 | | Dec 17 19:47:50.533 INFO [stderr] 92 | | // TODO: recursive closure via struct? Dec 17 19:47:50.533 INFO [stderr] ... | Dec 17 19:47:50.533 INFO [stderr] 122 | | parent Dec 17 19:47:50.533 INFO [stderr] 123 | | } Dec 17 19:47:50.533 INFO [stderr] | |_____^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: function is never used: `find_insert_loc` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:93:9 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 93 | / fn find_insert_loc<'a>(compare: fn(&str,&str)->Ordering, splits: &Vec<&str>, idx: usize, Dec 17 19:47:50.533 INFO [stderr] 94 | | q: &str, child: Option<&'a BPlusTreeNode>) -> (usize, bool) { Dec 17 19:47:50.533 INFO [stderr] 95 | | if idx == splits.len() { Dec 17 19:47:50.533 INFO [stderr] 96 | | (splits.len(), true) Dec 17 19:47:50.533 INFO [stderr] ... | Dec 17 19:47:50.533 INFO [stderr] 103 | | } Dec 17 19:47:50.533 INFO [stderr] 104 | | } Dec 17 19:47:50.533 INFO [stderr] | |_________^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: method is never used: `split_if_necessary` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:125:5 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 125 | / fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 17 19:47:50.533 INFO [stderr] 126 | | -> (Option<&'a BPlusTreeNode<'a>>, bool) { Dec 17 19:47:50.533 INFO [stderr] 127 | | let should_split = parent.splits.len() == self.branch_factor - 1; Dec 17 19:47:50.533 INFO [stderr] 128 | | if !should_split { Dec 17 19:47:50.533 INFO [stderr] ... | Dec 17 19:47:50.533 INFO [stderr] 133 | | } Dec 17 19:47:50.533 INFO [stderr] 134 | | } Dec 17 19:47:50.533 INFO [stderr] | |_____^ Dec 17 19:47:50.533 INFO [stderr] Dec 17 19:47:50.533 INFO [stderr] warning: function is never used: `verify_edit_distance` Dec 17 19:47:50.533 INFO [stderr] --> src/main.rs:137:1 Dec 17 19:47:50.533 INFO [stderr] | Dec 17 19:47:50.533 INFO [stderr] 137 | fn verify_edit_distance(x: &str, y: &str, distance_threshold: usize) -> Option { Dec 17 19:47:50.533 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.534 INFO [stderr] Dec 17 19:47:50.534 INFO [stderr] warning: function is never used: `create_verification_table` Dec 17 19:47:50.534 INFO [stderr] --> src/main.rs:171:1 Dec 17 19:47:50.534 INFO [stderr] | Dec 17 19:47:50.534 INFO [stderr] 171 | / fn create_verification_table( Dec 17 19:47:50.534 INFO [stderr] 172 | | nrows: usize, Dec 17 19:47:50.534 INFO [stderr] 173 | | ncols: usize, Dec 17 19:47:50.534 INFO [stderr] 174 | | distance_threshold: usize, Dec 17 19:47:50.534 INFO [stderr] ... | Dec 17 19:47:50.534 INFO [stderr] 225 | | (row0, Some(m)) Dec 17 19:47:50.534 INFO [stderr] 226 | | } Dec 17 19:47:50.534 INFO [stderr] | |_^ Dec 17 19:47:50.534 INFO [stderr] Dec 17 19:47:50.534 INFO [stderr] warning: unused import: `max` Dec 17 19:47:50.534 INFO [stderr] --> src/main.rs:2:16 Dec 17 19:47:50.534 INFO [stderr] | Dec 17 19:47:50.534 INFO [stderr] 2 | use std::cmp::{max, min, Ordering}; Dec 17 19:47:50.534 INFO [stderr] | ^^^ Dec 17 19:47:50.534 INFO [stderr] | Dec 17 19:47:50.534 INFO [stderr] = note: #[warn(unused_imports)] on by default Dec 17 19:47:50.534 INFO [stderr] Dec 17 19:47:50.661 INFO [stderr] warning: unused variable: `node_to_insert` Dec 17 19:47:50.661 INFO [stderr] --> src/main.rs:114:14 Dec 17 19:47:50.661 INFO [stderr] | Dec 17 19:47:50.661 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 17 19:47:50.661 INFO [stderr] | ^^^^^^^^^^^^^^ help: consider using `_node_to_insert` instead Dec 17 19:47:50.661 INFO [stderr] | Dec 17 19:47:50.661 INFO [stderr] = note: #[warn(unused_variables)] on by default Dec 17 19:47:50.661 INFO [stderr] Dec 17 19:47:50.661 INFO [stderr] warning: unused variable: `insert_idx` Dec 17 19:47:50.661 INFO [stderr] --> src/main.rs:114:30 Dec 17 19:47:50.661 INFO [stderr] | Dec 17 19:47:50.661 INFO [stderr] 114 | let (node_to_insert, insert_idx) = match split_result { Dec 17 19:47:50.661 INFO [stderr] | ^^^^^^^^^^ help: consider using `_insert_idx` instead Dec 17 19:47:50.661 INFO [stderr] Dec 17 19:47:50.661 INFO [stderr] warning: unused variable: `q` Dec 17 19:47:50.661 INFO [stderr] --> src/main.rs:125:68 Dec 17 19:47:50.661 INFO [stderr] | Dec 17 19:47:50.661 INFO [stderr] 125 | fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 17 19:47:50.661 INFO [stderr] | ^ help: consider using `_q` instead Dec 17 19:47:50.661 INFO [stderr] Dec 17 19:47:50.681 INFO [stderr] warning: struct is never constructed: `BPlusTree` Dec 17 19:47:50.681 INFO [stderr] --> src/main.rs:42:1 Dec 17 19:47:50.681 INFO [stderr] | Dec 17 19:47:50.681 INFO [stderr] 42 | struct BPlusTree<'a> { Dec 17 19:47:50.681 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.681 INFO [stderr] | Dec 17 19:47:50.681 INFO [stderr] = note: #[warn(dead_code)] on by default Dec 17 19:47:50.681 INFO [stderr] Dec 17 19:47:50.681 INFO [stderr] warning: struct is never constructed: `BPlusTreeNode` Dec 17 19:47:50.681 INFO [stderr] --> src/main.rs:48:1 Dec 17 19:47:50.681 INFO [stderr] | Dec 17 19:47:50.681 INFO [stderr] 48 | struct BPlusTreeNode<'a> { Dec 17 19:47:50.681 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.681 INFO [stderr] Dec 17 19:47:50.681 INFO [stderr] warning: method is never used: `is_leaf_node` Dec 17 19:47:50.681 INFO [stderr] --> src/main.rs:57:5 Dec 17 19:47:50.681 INFO [stderr] | Dec 17 19:47:50.681 INFO [stderr] 57 | fn is_leaf_node(&self) -> bool { Dec 17 19:47:50.682 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: method is never used: `insert` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:64:5 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 64 | fn insert(&'a self, q: &str) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.682 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: method is never used: `find_node` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:70:5 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 70 | fn find_node(&'a self, q: &str, node: &'a BPlusTreeNode<'a>) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.682 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: function is never used: `check_split` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:75:13 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 75 | / fn check_split<'a>(tree: &'a BPlusTree<'a>, q: &str, node: &'a BPlusTreeNode<'a>, Dec 17 19:47:50.682 INFO [stderr] 76 | | child_idx: usize) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.682 INFO [stderr] 77 | | if child_idx == node.splits.len() { Dec 17 19:47:50.682 INFO [stderr] 78 | | tree.find_node(q, &node.children[node.splits.len()]) Dec 17 19:47:50.682 INFO [stderr] ... | Dec 17 19:47:50.682 INFO [stderr] 83 | | } Dec 17 19:47:50.682 INFO [stderr] 84 | | }; Dec 17 19:47:50.682 INFO [stderr] | |_____________^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: method is never used: `rec_insert` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:89:5 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 89 | / fn rec_insert(&'a self, q: &str, parent: &'a BPlusTreeNode<'a>, Dec 17 19:47:50.682 INFO [stderr] 90 | | child: Option<&'a BPlusTreeNode>) -> &'a BPlusTreeNode<'a> { Dec 17 19:47:50.682 INFO [stderr] 91 | | Dec 17 19:47:50.682 INFO [stderr] 92 | | // TODO: recursive closure via struct? Dec 17 19:47:50.682 INFO [stderr] ... | Dec 17 19:47:50.682 INFO [stderr] 122 | | parent Dec 17 19:47:50.682 INFO [stderr] 123 | | } Dec 17 19:47:50.682 INFO [stderr] | |_____^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: function is never used: `find_insert_loc` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:93:9 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 93 | / fn find_insert_loc<'a>(compare: fn(&str,&str)->Ordering, splits: &Vec<&str>, idx: usize, Dec 17 19:47:50.682 INFO [stderr] 94 | | q: &str, child: Option<&'a BPlusTreeNode>) -> (usize, bool) { Dec 17 19:47:50.682 INFO [stderr] 95 | | if idx == splits.len() { Dec 17 19:47:50.682 INFO [stderr] 96 | | (splits.len(), true) Dec 17 19:47:50.682 INFO [stderr] ... | Dec 17 19:47:50.682 INFO [stderr] 103 | | } Dec 17 19:47:50.682 INFO [stderr] 104 | | } Dec 17 19:47:50.682 INFO [stderr] | |_________^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.682 INFO [stderr] warning: method is never used: `split_if_necessary` Dec 17 19:47:50.682 INFO [stderr] --> src/main.rs:125:5 Dec 17 19:47:50.682 INFO [stderr] | Dec 17 19:47:50.682 INFO [stderr] 125 | / fn split_if_necessary(&'a self, parent: &'a BPlusTreeNode<'a>, q: &str) Dec 17 19:47:50.682 INFO [stderr] 126 | | -> (Option<&'a BPlusTreeNode<'a>>, bool) { Dec 17 19:47:50.682 INFO [stderr] 127 | | let should_split = parent.splits.len() == self.branch_factor - 1; Dec 17 19:47:50.682 INFO [stderr] 128 | | if !should_split { Dec 17 19:47:50.682 INFO [stderr] ... | Dec 17 19:47:50.682 INFO [stderr] 133 | | } Dec 17 19:47:50.682 INFO [stderr] 134 | | } Dec 17 19:47:50.682 INFO [stderr] | |_____^ Dec 17 19:47:50.682 INFO [stderr] Dec 17 19:47:50.699 INFO [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.46s Dec 17 19:47:51.075 INFO running `"docker" "inspect" "acceb0a084060368da0ee226d7ef61cd50b155b955e5d5691cced2759d1f3072"` Dec 17 19:47:51.183 INFO running `"docker" "rm" "-f" "acceb0a084060368da0ee226d7ef61cd50b155b955e5d5691cced2759d1f3072"` Dec 17 19:47:51.290 INFO [stdout] acceb0a084060368da0ee226d7ef61cd50b155b955e5d5691cced2759d1f3072