[INFO] cloning repository https://github.com/XiaoyaoZhangCS/GKD-D-DNNF [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/XiaoyaoZhangCS/GKD-D-DNNF" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiaoyaoZhangCS%2FGKD-D-DNNF", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiaoyaoZhangCS%2FGKD-D-DNNF'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a8b8d04b29f848dbea1a3e74aa41a33164b78945 [INFO] building XiaoyaoZhangCS/GKD-D-DNNF against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FXiaoyaoZhangCS%2FGKD-D-DNNF" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/XiaoyaoZhangCS/GKD-D-DNNF [INFO] finished tweaking git repo https://github.com/XiaoyaoZhangCS/GKD-D-DNNF [INFO] tweaked toml for git repo https://github.com/XiaoyaoZhangCS/GKD-D-DNNF written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/XiaoyaoZhangCS/GKD-D-DNNF on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/XiaoyaoZhangCS/GKD-D-DNNF 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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e69acdb10337810606fb83d16f82c4df6ec3c7dfa02fc879057b19b9b1821bb0 [INFO] running `Command { std: "docker" "start" "-a" "e69acdb10337810606fb83d16f82c4df6ec3c7dfa02fc879057b19b9b1821bb0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e69acdb10337810606fb83d16f82c4df6ec3c7dfa02fc879057b19b9b1821bb0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e69acdb10337810606fb83d16f82c4df6ec3c7dfa02fc879057b19b9b1821bb0", kill_on_drop: false }` [INFO] [stdout] e69acdb10337810606fb83d16f82c4df6ec3c7dfa02fc879057b19b9b1821bb0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 48ecc941d65d5220353152f539b0b92a6da5b1bcc0ddb5721712cd86acfd2fa0 [INFO] running `Command { std: "docker" "start" "-a" "48ecc941d65d5220353152f539b0b92a6da5b1bcc0ddb5721712cd86acfd2fa0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.170 [INFO] [stderr] Compiling proc-macro2 v1.0.66 [INFO] [stderr] Compiling unicode-ident v1.0.11 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Compiling libm v0.2.7 [INFO] [stderr] Compiling gmp-mpfr-sys v1.6.2 [INFO] [stderr] Compiling utf8parse v0.2.1 [INFO] [stderr] Compiling anstyle-parse v0.2.1 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Compiling az v1.2.1 [INFO] [stderr] Compiling either v1.9.0 [INFO] [stderr] Compiling serde v1.0.185 [INFO] [stderr] Compiling anstyle v1.0.1 [INFO] [stderr] Compiling anstyle-query v1.0.0 [INFO] [stderr] Compiling colorchoice v1.0.0 [INFO] [stderr] Compiling rustix v0.38.30 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Compiling anstream v0.6.11 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Compiling rug v1.23.0 [INFO] [stderr] Compiling clap_lex v0.6.0 [INFO] [stderr] Compiling bitflags v2.4.2 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling hashbrown v0.14.0 [INFO] [stderr] Compiling linux-raw-sys v0.4.13 [INFO] [stderr] Compiling getrandom v0.2.10 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling clap_builder v4.4.18 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling indexmap v2.0.0 [INFO] [stderr] Compiling libmimalloc-sys v0.1.35 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling wyz v0.5.1 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling csv-core v0.1.10 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling funty v2.0.0 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Compiling ryu v1.0.15 [INFO] [stderr] Compiling tempfile v3.9.0 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling bitvec v1.0.1 [INFO] [stderr] Compiling sysinfo v0.30.13 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling petgraph v0.6.4 [INFO] [stderr] Compiling clap_derive v4.4.7 [INFO] [stderr] Compiling csv v1.2.2 [INFO] [stderr] Compiling mimalloc v0.1.39 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stderr] Compiling rand_pcg v0.3.1 [INFO] [stderr] Compiling itertools v0.12.0 [INFO] [stderr] Compiling file_diff v1.0.0 [INFO] [stderr] Compiling streaming-iterator v0.1.9 [INFO] [stderr] Compiling workctl v0.2.0 [INFO] [stderr] Compiling clap v4.4.18 [INFO] [stderr] Compiling ddnnife v0.7.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition value: `benchmarks` [INFO] [stdout] --> src/lib.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | #[cfg(all(test, feature = "benchmarks"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `benchmarks` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CNFToken` and `check_for_cnf_header` [INFO] [stdout] --> src/parser.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use from_cnf::{check_for_cnf_header, CNFToken}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `And` [INFO] [stdout] --> src/parser.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `hash::Hash`, and `time::Duration` [INFO] [stdout] --> src/parser.rs:19:113 [INFO] [stdout] | [INFO] [stdout] 19 | ...Str, fs::{self, File}, hash::Hash, io::{BufRead, BufReader, Write}, path::Path, process, rc::Rc, time::Duration [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `anomalies::t_wise_sampling::sat_wrapper`, `self`, and `self` [INFO] [stdout] --> src/parser.rs:24:20 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::ddnnf::{self, anomalies::t_wise_sampling::sat_wrapper, node::{self, Node, NodeType}, Ddnnf}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EdgeIndex`, `Edge`, and `Neighbors` [INFO] [stdout] --> src/parser.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | graph::{Edge, EdgeIndex, NodeIndex}, [INFO] [stdout] | ^^^^ ^^^^^^^^^ [INFO] [stdout] 28 | stable_graph::{Neighbors, StableGraph}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iter::empty` [INFO] [stdout] --> src/parser.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | use rayon::{iter::empty, prelude::*}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Mutex` [INFO] [stdout] --> src/parser.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | use std::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:60:19 [INFO] [stdout] | [INFO] [stdout] 60 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:84:23 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:153:23 [INFO] [stdout] | [INFO] [stdout] 153 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: denote infinite loops with `loop { ... }` [INFO] [stdout] --> src/parser.rs:593:13 [INFO] [stdout] | [INFO] [stdout] 593 | while true { [INFO] [stdout] | ^^^^^^^^^^ help: use `loop` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(while_true)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:698:12 [INFO] [stdout] | [INFO] [stdout] 698 | if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 698 - if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] 698 + if nx.index() < set.capacity() && set[nx.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:710:16 [INFO] [stdout] | [INFO] [stdout] 710 | if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 710 - if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] 710 + if n.index() < set.capacity() && set[n.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:912:12 [INFO] [stdout] | [INFO] [stdout] 912 | if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 912 - if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] 912 + if neighbor.index() < set.capacity() && set[neighbor.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf/counting/features.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::node::NodeType` [INFO] [stdout] --> src/ddnnf/heuristics.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::node::NodeType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/multiple_queries.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | std::thread::yield_now(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | #![warn(unused_qualifications)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 127 - std::thread::yield_now(); [INFO] [stdout] 127 + thread::yield_now(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/stream.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | std::thread::park(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 65 - std::thread::park(); [INFO] [stdout] 65 + thread::park(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VecDeque` and `hash::Hash` [INFO] [stdout] --> src/ddnnf.rs:8:53 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{collections::{BTreeSet, HashMap, HashSet, VecDeque}, hash::Hash, io::BufRead, time::Duration}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `index`, `ptr::swap`, and `vec` [INFO] [stdout] --> src/ddnnf.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | use bitvec::{index, ptr::swap, vec}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `counting::features` [INFO] [stdout] --> src/ddnnf.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use counting::features; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Interleave` [INFO] [stdout] --> src/ddnnf.rs:12:25 [INFO] [stdout] | [INFO] [stdout] 12 | use itertools::{Either, Interleave}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ddnnf.rs:531:59 [INFO] [stdout] | [INFO] [stdout] 531 | pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 531 - pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] 531 + pub fn my_weighted_dp(&mut self, features: &[i32]) -> Vec<(Integer, Vec)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/ddnnf.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 213 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 214 | println!("node:"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IntoNeighborsDirected` [INFO] [stdout] --> src/parser.rs:29:36 [INFO] [stdout] | [INFO] [stdout] 29 | visit::{DfsPostOrder, EdgeRef, IntoNeighborsDirected}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ToUsize` [INFO] [stdout] --> src/parser.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `features` [INFO] [stdout] --> src/parser.rs:418:30 [INFO] [stdout] | [INFO] [stdout] 418 | Edge { from, to, features } => { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `features: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `raw` [INFO] [stdout] --> src/parser.rs:586:13 [INFO] [stdout] | [INFO] [stdout] 586 | let raw = idx; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:591:21 [INFO] [stdout] | [INFO] [stdout] 591 | let mut last = son; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last` is never read [INFO] [stdout] --> src/parser.rs:609:21 [INFO] [stdout] | [INFO] [stdout] 609 | last = idx; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:36 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:23 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:39 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `needless_edge_num` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let mut needless_edge_num = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_needless_edge_num` instead [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 814 - let mut needless_edge_num = 0; [INFO] [stdout] 814 + let mut ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS = 0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/parser.rs:764:5 [INFO] [stdout] | [INFO] [stdout] 764 | turn: i32, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut m: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | let mut n: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut t: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1016:9 [INFO] [stdout] | [INFO] [stdout] 1016 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1151:9 [INFO] [stdout] | [INFO] [stdout] 1151 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/ddnnf.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let start = Instant::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | for i in 0..self.number_of_variables + 1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/ddnnf.rs:874:17 [INFO] [stdout] | [INFO] [stdout] 874 | let mut res: Vec<(Integer, Vec)> = Vec::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | for i in 0..len { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 615 | for _i in 0..len { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 615 - for i in 0..len { [INFO] [stdout] 615 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..len { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `w` is never read [INFO] [stdout] --> src/ddnnf.rs:636:33 [INFO] [stdout] | [INFO] [stdout] 636 | let mut w = Integer::ZERO; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/ddnnf.rs:640:29 [INFO] [stdout] | [INFO] [stdout] 640 | for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 640 | for _k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 640 - for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] 640 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..self.limit_solution_num as usize{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pre_hashset_multi_thread` is never used [INFO] [stdout] --> src/parser.rs:1074:4 [INFO] [stdout] | [INFO] [stdout] 1074 | fn pre_hashset_multi_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals` is never used [INFO] [stdout] --> src/parser.rs:1209:4 [INFO] [stdout] | [INFO] [stdout] 1209 | fn get_literals( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals_bitset` is never used [INFO] [stdout] --> src/parser.rs:1249:4 [INFO] [stdout] | [INFO] [stdout] 1249 | fn get_literals_bitset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyAndMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:48:19 [INFO] [stdout] | [INFO] [stdout] 48 | pub(super) struct DummyAndMerger<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyOrMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | pub(super) struct DummyOrMerger {} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mark_nodes_start` and `mark_nodes` are never used [INFO] [stdout] --> src/ddnnf/counting/marking.rs:248:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Ddnnf { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 248 | fn mark_nodes_start(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | fn mark_nodes(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_depths` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Ddnnf { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | fn get_depths(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_depth` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:273:4 [INFO] [stdout] | [INFO] [stdout] 273 | fn get_depth(nodes: &[Node], indize: usize, count: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1055:9 [INFO] [stdout] | [INFO] [stdout] 1055 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1190:9 [INFO] [stdout] | [INFO] [stdout] 1190 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:789:45 [INFO] [stdout] | [INFO] [stdout] 789 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:815:45 [INFO] [stdout] | [INFO] [stdout] 815 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ddnnf_lib::ddnnf::anomalies::t_wise_sampling::save_solution_to_file` [INFO] [stdout] --> src/bin/ddnnife.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use ddnnf_lib::ddnnf::anomalies::t_wise_sampling::save_solution_to_file; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:304:11 [INFO] [stdout] | [INFO] [stdout] 304 | if(cli.m.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 304 - if(cli.m.is_some()){ [INFO] [stdout] 304 + if cli.m.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:307:11 [INFO] [stdout] | [INFO] [stdout] 307 | if(cli.n.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 307 - if(cli.n.is_some()){ [INFO] [stdout] 307 + if cli.n.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:310:11 [INFO] [stdout] | [INFO] [stdout] 310 | if(cli.iter.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 310 - if(cli.iter.is_some()){ [INFO] [stdout] 310 + if cli.iter.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 05s [INFO] running `Command { std: "docker" "inspect" "48ecc941d65d5220353152f539b0b92a6da5b1bcc0ddb5721712cd86acfd2fa0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "48ecc941d65d5220353152f539b0b92a6da5b1bcc0ddb5721712cd86acfd2fa0", kill_on_drop: false }` [INFO] [stdout] 48ecc941d65d5220353152f539b0b92a6da5b1bcc0ddb5721712cd86acfd2fa0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fde5f5e06662e59fb1050913d9da6df6628a8f6cebb9244cff06fa9f2a457f1b [INFO] running `Command { std: "docker" "start" "-a" "fde5f5e06662e59fb1050913d9da6df6628a8f6cebb9244cff06fa9f2a457f1b", kill_on_drop: false }` [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Compiling slab v0.4.8 [INFO] [stderr] Compiling futures-channel v0.3.28 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling aho-corasick v1.0.4 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling regex-syntax v0.7.4 [INFO] [stderr] Compiling futures-sink v0.3.28 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling pin-project-lite v0.2.12 [INFO] [stderr] Compiling futures-io v0.3.28 [INFO] [stderr] Compiling smallvec v1.11.0 [INFO] [stderr] Compiling predicates-core v1.0.6 [INFO] [stderr] Compiling doc-comment v0.3.3 [INFO] [stderr] Compiling float-cmp v0.9.0 [INFO] [stderr] Compiling csv-core v0.1.10 [INFO] [stderr] Compiling termtree v0.4.1 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling predicates-tree v1.0.9 [INFO] [stderr] Compiling csv v1.2.2 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling dashmap v5.5.0 [INFO] [stderr] Compiling serial_test_derive v2.0.0 [INFO] [stderr] Compiling wait-timeout v0.2.0 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling regex-automata v0.3.6 [INFO] [stderr] Compiling ddnnife v0.7.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition value: `benchmarks` [INFO] [stdout] --> src/lib.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | #[cfg(all(test, feature = "benchmarks"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `benchmarks` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CNFToken` and `check_for_cnf_header` [INFO] [stdout] --> src/parser.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use from_cnf::{check_for_cnf_header, CNFToken}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `And` [INFO] [stdout] --> src/parser.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `hash::Hash`, and `time::Duration` [INFO] [stdout] --> src/parser.rs:19:113 [INFO] [stdout] | [INFO] [stdout] 19 | ...Str, fs::{self, File}, hash::Hash, io::{BufRead, BufReader, Write}, path::Path, process, rc::Rc, time::Duration [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `anomalies::t_wise_sampling::sat_wrapper`, `self`, and `self` [INFO] [stdout] --> src/parser.rs:24:20 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::ddnnf::{self, anomalies::t_wise_sampling::sat_wrapper, node::{self, Node, NodeType}, Ddnnf}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EdgeIndex`, `Edge`, and `Neighbors` [INFO] [stdout] --> src/parser.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | graph::{Edge, EdgeIndex, NodeIndex}, [INFO] [stdout] | ^^^^ ^^^^^^^^^ [INFO] [stdout] 28 | stable_graph::{Neighbors, StableGraph}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iter::empty` [INFO] [stdout] --> src/parser.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | use rayon::{iter::empty, prelude::*}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Mutex` [INFO] [stdout] --> src/parser.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | use std::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:60:19 [INFO] [stdout] | [INFO] [stdout] 60 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:84:23 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:153:23 [INFO] [stdout] | [INFO] [stdout] 153 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: denote infinite loops with `loop { ... }` [INFO] [stdout] --> src/parser.rs:593:13 [INFO] [stdout] | [INFO] [stdout] 593 | while true { [INFO] [stdout] | ^^^^^^^^^^ help: use `loop` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(while_true)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:698:12 [INFO] [stdout] | [INFO] [stdout] 698 | if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 698 - if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] 698 + if nx.index() < set.capacity() && set[nx.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:710:16 [INFO] [stdout] | [INFO] [stdout] 710 | if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 710 - if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] 710 + if n.index() < set.capacity() && set[n.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:912:12 [INFO] [stdout] | [INFO] [stdout] 912 | if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 912 - if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] 912 + if neighbor.index() < set.capacity() && set[neighbor.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf/counting/features.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::node::NodeType` [INFO] [stdout] --> src/ddnnf/heuristics.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::node::NodeType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/multiple_queries.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | std::thread::yield_now(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | #![warn(unused_qualifications)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 127 - std::thread::yield_now(); [INFO] [stdout] 127 + thread::yield_now(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/stream.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | std::thread::park(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 65 - std::thread::park(); [INFO] [stdout] 65 + thread::park(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VecDeque` and `hash::Hash` [INFO] [stdout] --> src/ddnnf.rs:8:53 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{collections::{BTreeSet, HashMap, HashSet, VecDeque}, hash::Hash, io::BufRead, time::Duration}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `index`, `ptr::swap`, and `vec` [INFO] [stdout] --> src/ddnnf.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | use bitvec::{index, ptr::swap, vec}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `counting::features` [INFO] [stdout] --> src/ddnnf.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use counting::features; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Interleave` [INFO] [stdout] --> src/ddnnf.rs:12:25 [INFO] [stdout] | [INFO] [stdout] 12 | use itertools::{Either, Interleave}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ddnnf.rs:531:59 [INFO] [stdout] | [INFO] [stdout] 531 | pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 531 - pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] 531 + pub fn my_weighted_dp(&mut self, features: &[i32]) -> Vec<(Integer, Vec)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/ddnnf.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 213 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 214 | println!("node:"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IntoNeighborsDirected` [INFO] [stdout] --> src/parser.rs:29:36 [INFO] [stdout] | [INFO] [stdout] 29 | visit::{DfsPostOrder, EdgeRef, IntoNeighborsDirected}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ToUsize` [INFO] [stdout] --> src/parser.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/ddnnf.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let start = Instant::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | for i in 0..len { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 615 | for _i in 0..len { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 615 - for i in 0..len { [INFO] [stdout] 615 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..len { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:36 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:23 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:39 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `w` is never read [INFO] [stdout] --> src/ddnnf.rs:636:33 [INFO] [stdout] | [INFO] [stdout] 636 | let mut w = Integer::ZERO; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/ddnnf.rs:640:29 [INFO] [stdout] | [INFO] [stdout] 640 | for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 640 | for _k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 640 - for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] 640 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..self.limit_solution_num as usize{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `features` [INFO] [stdout] --> src/parser.rs:418:30 [INFO] [stdout] | [INFO] [stdout] 418 | Edge { from, to, features } => { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `features: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `raw` [INFO] [stdout] --> src/parser.rs:586:13 [INFO] [stdout] | [INFO] [stdout] 586 | let raw = idx; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:591:21 [INFO] [stdout] | [INFO] [stdout] 591 | let mut last = son; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last` is never read [INFO] [stdout] --> src/parser.rs:609:21 [INFO] [stdout] | [INFO] [stdout] 609 | last = idx; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | for i in 0..self.number_of_variables + 1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/ddnnf.rs:874:17 [INFO] [stdout] | [INFO] [stdout] 874 | let mut res: Vec<(Integer, Vec)> = Vec::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1151:9 [INFO] [stdout] | [INFO] [stdout] 1151 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1016:9 [INFO] [stdout] | [INFO] [stdout] 1016 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `needless_edge_num` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let mut needless_edge_num = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_needless_edge_num` instead [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 814 - let mut needless_edge_num = 0; [INFO] [stdout] 814 + let mut ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS = 0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/parser.rs:764:5 [INFO] [stdout] | [INFO] [stdout] 764 | turn: i32, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling futures-executor v0.3.28 [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut m: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | let mut n: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut t: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pre_hashset_multi_thread` is never used [INFO] [stdout] --> src/parser.rs:1074:4 [INFO] [stdout] | [INFO] [stdout] 1074 | fn pre_hashset_multi_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals` is never used [INFO] [stdout] --> src/parser.rs:1209:4 [INFO] [stdout] | [INFO] [stdout] 1209 | fn get_literals( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals_bitset` is never used [INFO] [stdout] --> src/parser.rs:1249:4 [INFO] [stdout] | [INFO] [stdout] 1249 | fn get_literals_bitset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyAndMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:48:19 [INFO] [stdout] | [INFO] [stdout] 48 | pub(super) struct DummyAndMerger<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyOrMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | pub(super) struct DummyOrMerger {} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mark_nodes_start` and `mark_nodes` are never used [INFO] [stdout] --> src/ddnnf/counting/marking.rs:248:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Ddnnf { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 248 | fn mark_nodes_start(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | fn mark_nodes(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_depths` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Ddnnf { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | fn get_depths(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_depth` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:273:4 [INFO] [stdout] | [INFO] [stdout] 273 | fn get_depth(nodes: &[Node], indize: usize, count: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1055:9 [INFO] [stdout] | [INFO] [stdout] 1055 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1190:9 [INFO] [stdout] | [INFO] [stdout] 1190 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:789:45 [INFO] [stdout] | [INFO] [stdout] 789 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:815:45 [INFO] [stdout] | [INFO] [stdout] 815 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling futures v0.3.28 [INFO] [stderr] Compiling serial_test v2.0.0 [INFO] [stderr] Compiling regex v1.9.3 [INFO] [stderr] Compiling bstr v1.6.0 [INFO] [stderr] Compiling predicates v3.1.0 [INFO] [stderr] Compiling assert_cmd v2.0.12 [INFO] [stdout] warning: unexpected `cfg` condition value: `benchmarks` [INFO] [stdout] --> src/lib.rs:7:17 [INFO] [stdout] | [INFO] [stdout] 7 | #[cfg(all(test, feature = "benchmarks"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `benchmarks` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CNFToken` and `check_for_cnf_header` [INFO] [stdout] --> src/parser.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use from_cnf::{check_for_cnf_header, CNFToken}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `And` [INFO] [stdout] --> src/parser.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `hash::Hash`, and `time::Duration` [INFO] [stdout] --> src/parser.rs:19:113 [INFO] [stdout] | [INFO] [stdout] 19 | ...Str, fs::{self, File}, hash::Hash, io::{BufRead, BufReader, Write}, path::Path, process, rc::Rc, time::Duration [INFO] [stdout] | ^^^^^^^^^^ ^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `anomalies::t_wise_sampling::sat_wrapper`, `self`, and `self` [INFO] [stdout] --> src/parser.rs:24:20 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::ddnnf::{self, anomalies::t_wise_sampling::sat_wrapper, node::{self, Node, NodeType}, Ddnnf}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EdgeIndex`, `Edge`, and `Neighbors` [INFO] [stdout] --> src/parser.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | graph::{Edge, EdgeIndex, NodeIndex}, [INFO] [stdout] | ^^^^ ^^^^^^^^^ [INFO] [stdout] 28 | stable_graph::{Neighbors, StableGraph}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `iter::empty` [INFO] [stdout] --> src/parser.rs:35:13 [INFO] [stdout] | [INFO] [stdout] 35 | use rayon::{iter::empty, prelude::*}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Mutex` [INFO] [stdout] --> src/parser.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | use std::sync::Mutex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:60:19 [INFO] [stdout] | [INFO] [stdout] 60 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:84:23 [INFO] [stdout] | [INFO] [stdout] 84 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 129 | #[cfg(feature = "d4")] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `d4` [INFO] [stdout] --> src/parser.rs:153:23 [INFO] [stdout] | [INFO] [stdout] 153 | #[cfg(not(feature = "d4"))] [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `d4-oxide` [INFO] [stdout] = help: consider adding `d4` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: denote infinite loops with `loop { ... }` [INFO] [stdout] --> src/parser.rs:593:13 [INFO] [stdout] | [INFO] [stdout] 593 | while true { [INFO] [stdout] | ^^^^^^^^^^ help: use `loop` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(while_true)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:698:12 [INFO] [stdout] | [INFO] [stdout] 698 | if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 698 - if (nx.index() < set.capacity() && set[nx.index()]) { [INFO] [stdout] 698 + if nx.index() < set.capacity() && set[nx.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:710:16 [INFO] [stdout] | [INFO] [stdout] 710 | if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 710 - if (n.index() < set.capacity() && set[n.index()]) { [INFO] [stdout] 710 + if n.index() < set.capacity() && set[n.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:912:12 [INFO] [stdout] | [INFO] [stdout] 912 | if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 912 - if (neighbor.index() < set.capacity() && set[neighbor.index()]) { [INFO] [stdout] 912 + if neighbor.index() < set.capacity() && set[neighbor.index()] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf/counting/features.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::node::NodeType` [INFO] [stdout] --> src/ddnnf/heuristics.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use super::node::NodeType; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/multiple_queries.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | std::thread::yield_now(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | #![warn(unused_qualifications)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 127 - std::thread::yield_now(); [INFO] [stdout] 127 + thread::yield_now(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary qualification [INFO] [stdout] --> src/ddnnf/stream.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | std::thread::park(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: remove the unnecessary path segments [INFO] [stdout] | [INFO] [stdout] 65 - std::thread::park(); [INFO] [stdout] 65 + thread::park(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `VecDeque` and `hash::Hash` [INFO] [stdout] --> src/ddnnf.rs:8:53 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{collections::{BTreeSet, HashMap, HashSet, VecDeque}, hash::Hash, io::BufRead, time::Duration}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `index`, `ptr::swap`, and `vec` [INFO] [stdout] --> src/ddnnf.rs:10:14 [INFO] [stdout] | [INFO] [stdout] 10 | use bitvec::{index, ptr::swap, vec}; [INFO] [stdout] | ^^^^^ ^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `counting::features` [INFO] [stdout] --> src/ddnnf.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use counting::features; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Interleave` [INFO] [stdout] --> src/ddnnf.rs:12:25 [INFO] [stdout] | [INFO] [stdout] 12 | use itertools::{Either, Interleave}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::ToPrimitive` [INFO] [stdout] --> src/ddnnf.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use rand_distr::num_traits::ToPrimitive; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/ddnnf.rs:531:59 [INFO] [stdout] | [INFO] [stdout] 531 | pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 531 - pub fn my_weighted_dp(&mut self, features: &[i32]) -> (Vec<(Integer, Vec)>) { [INFO] [stdout] 531 + pub fn my_weighted_dp(&mut self, features: &[i32]) -> Vec<(Integer, Vec)> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/ddnnf.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 213 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 214 | println!("node:"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] = note: this warning originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ddnnf_lib::ddnnf::anomalies::t_wise_sampling::save_solution_to_file` [INFO] [stdout] --> src/bin/ddnnife.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use ddnnf_lib::ddnnf::anomalies::t_wise_sampling::save_solution_to_file; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:304:11 [INFO] [stdout] | [INFO] [stdout] 304 | if(cli.m.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 304 - if(cli.m.is_some()){ [INFO] [stdout] 304 + if cli.m.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:307:11 [INFO] [stdout] | [INFO] [stdout] 307 | if(cli.n.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 307 - if(cli.n.is_some()){ [INFO] [stdout] 307 + if cli.n.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/bin/ddnnife.rs:310:11 [INFO] [stdout] | [INFO] [stdout] 310 | if(cli.iter.is_some()){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 310 - if(cli.iter.is_some()){ [INFO] [stdout] 310 + if cli.iter.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `IntoNeighborsDirected` [INFO] [stdout] --> src/parser.rs:29:36 [INFO] [stdout] | [INFO] [stdout] 29 | visit::{DfsPostOrder, EdgeRef, IntoNeighborsDirected}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ToUsize` [INFO] [stdout] --> src/parser.rs:10:16 [INFO] [stdout] | [INFO] [stdout] 10 | use nom::{And, ToUsize}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1151:9 [INFO] [stdout] | [INFO] [stdout] 1151 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:20 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:56:36 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn build_ddnnf(mut path: &str, mut total_features: Option) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:23 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:118:39 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn my_build_ddnnf(mut path: &str, mut total_features: Option, m: u32,n: u32,t:u32) -> Ddnnf { [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:126:9 [INFO] [stdout] | [INFO] [stdout] 126 | let mut clauses = BTreeSet::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `features` [INFO] [stdout] --> src/parser.rs:418:30 [INFO] [stdout] | [INFO] [stdout] 418 | Edge { from, to, features } => { [INFO] [stdout] | ^^^^^^^^ help: try ignoring the field: `features: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `raw` [INFO] [stdout] --> src/parser.rs:586:13 [INFO] [stdout] | [INFO] [stdout] 586 | let raw = idx; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_raw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:591:21 [INFO] [stdout] | [INFO] [stdout] 591 | let mut last = son; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last` is never read [INFO] [stdout] --> src/parser.rs:609:21 [INFO] [stdout] | [INFO] [stdout] 609 | last = idx; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `needless_edge_num` is assigned to, but never used [INFO] [stdout] --> src/parser.rs:814:17 [INFO] [stdout] | [INFO] [stdout] 814 | let mut needless_edge_num = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_needless_edge_num` instead [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 814 - let mut needless_edge_num = 0; [INFO] [stdout] 814 + let mut ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS = 0; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/parser.rs:764:5 [INFO] [stdout] | [INFO] [stdout] 764 | turn: i32, [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut m: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:767:9 [INFO] [stdout] | [INFO] [stdout] 767 | let mut n: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut t: u32; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/parser.rs:1016:9 [INFO] [stdout] | [INFO] [stdout] 1016 | for d in 0..max_dep{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> src/ddnnf.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let start = Instant::now(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:615:13 [INFO] [stdout] | [INFO] [stdout] 615 | for i in 0..len { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 615 | for _i in 0..len { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 615 - for i in 0..len { [INFO] [stdout] 615 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..len { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `w` is never read [INFO] [stdout] --> src/ddnnf.rs:636:33 [INFO] [stdout] | [INFO] [stdout] 636 | let mut w = Integer::ZERO; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/ddnnf.rs:640:29 [INFO] [stdout] | [INFO] [stdout] 640 | for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 640 | for _k in 0..self.limit_solution_num as usize{ [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `ELTS` [INFO] [stdout] | [INFO] [stdout] 640 - for k in 0..self.limit_solution_num as usize{ [INFO] [stdout] 640 + for ddnnf::anomalies::atomic_sets::::get_signed_excludes::ELTS in 0..self.limit_solution_num as usize{ [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/ddnnf.rs:874:17 [INFO] [stdout] | [INFO] [stdout] 874 | let mut res: Vec<(Integer, Vec)> = Vec::new(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ddnnf.rs:855:13 [INFO] [stdout] | [INFO] [stdout] 855 | for i in 0..self.number_of_variables + 1 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1055:9 [INFO] [stdout] | [INFO] [stdout] 1055 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Duration` should have a snake case name [INFO] [stdout] --> src/parser.rs:1190:9 [INFO] [stdout] | [INFO] [stdout] 1190 | let Duration = start.elapsed(); [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyAndMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:48:19 [INFO] [stdout] | [INFO] [stdout] 48 | pub(super) struct DummyAndMerger<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DummyOrMerger` is never constructed [INFO] [stdout] --> src/ddnnf/anomalies/t_wise_sampling/sample_merger.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | pub(super) struct DummyOrMerger {} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `mark_nodes_start` and `mark_nodes` are never used [INFO] [stdout] --> src/ddnnf/counting/marking.rs:248:8 [INFO] [stdout] | [INFO] [stdout] 7 | impl Ddnnf { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 248 | fn mark_nodes_start(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 263 | fn mark_nodes(&mut self, i: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_depths` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:111:8 [INFO] [stdout] | [INFO] [stdout] 8 | impl Ddnnf { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | fn get_depths(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_depth` is never used [INFO] [stdout] --> src/ddnnf/heuristics.rs:273:4 [INFO] [stdout] | [INFO] [stdout] 273 | fn get_depth(nodes: &[Node], indize: usize, count: u64) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:789:45 [INFO] [stdout] | [INFO] [stdout] 789 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 789 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 789 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/ddnnf.rs:815:45 [INFO] [stdout] | [INFO] [stdout] 815 | for son_vec_list in solution_map.get(*son) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + while let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 815 - for son_vec_list in solution_map.get(*son) { [INFO] [stdout] 815 + if let Some(son_vec_list) = solution_map.get(*son) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pre_hashset_multi_thread` is never used [INFO] [stdout] --> src/parser.rs:1074:4 [INFO] [stdout] | [INFO] [stdout] 1074 | fn pre_hashset_multi_thread( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals` is never used [INFO] [stdout] --> src/parser.rs:1209:4 [INFO] [stdout] | [INFO] [stdout] 1209 | fn get_literals( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_literals_bitset` is never used [INFO] [stdout] --> src/parser.rs:1249:4 [INFO] [stdout] | [INFO] [stdout] 1249 | fn get_literals_bitset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 37.87s [INFO] running `Command { std: "docker" "inspect" "fde5f5e06662e59fb1050913d9da6df6628a8f6cebb9244cff06fa9f2a457f1b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fde5f5e06662e59fb1050913d9da6df6628a8f6cebb9244cff06fa9f2a457f1b", kill_on_drop: false }` [INFO] [stdout] fde5f5e06662e59fb1050913d9da6df6628a8f6cebb9244cff06fa9f2a457f1b