[INFO] cloning repository https://github.com/Peter-JanGootzen/circuit_simulator.rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Peter-JanGootzen/circuit_simulator.rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPeter-JanGootzen%2Fcircuit_simulator.rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPeter-JanGootzen%2Fcircuit_simulator.rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3bbd0629d16640ab11539478b044ddb428f3d6fd [INFO] checking Peter-JanGootzen/circuit_simulator.rs/3bbd0629d16640ab11539478b044ddb428f3d6fd against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPeter-JanGootzen%2Fcircuit_simulator.rs" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Peter-JanGootzen/circuit_simulator.rs on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Peter-JanGootzen/circuit_simulator.rs [INFO] finished tweaking git repo https://github.com/Peter-JanGootzen/circuit_simulator.rs [INFO] tweaked toml for git repo https://github.com/Peter-JanGootzen/circuit_simulator.rs written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Peter-JanGootzen/circuit_simulator.rs 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" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pango-sys v0.8.0 [INFO] [stderr] Downloaded objekt-clonable v0.2.2 [INFO] [stderr] Downloaded objekt-clonable-impl v0.2.2 [INFO] [stderr] Downloaded redox_syscall v0.1.54 [INFO] [stderr] Downloaded fragile v0.3.0 [INFO] [stderr] Downloaded cairo-sys-rs v0.8.0 [INFO] [stderr] Downloaded gdk-pixbuf v0.6.0 [INFO] [stderr] Downloaded gdk-pixbuf-sys v0.8.0 [INFO] [stderr] Downloaded termion v1.5.3 [INFO] [stderr] Downloaded atk-sys v0.8.0 [INFO] [stderr] Downloaded atk v0.6.0 [INFO] [stderr] Downloaded gdk-sys v0.8.0 [INFO] [stderr] Downloaded gdk v0.10.0 [INFO] [stderr] Downloaded gio-sys v0.8.0 [INFO] [stderr] Downloaded gio v0.6.0 [INFO] [stderr] Downloaded gtk-sys v0.8.0 [INFO] [stderr] Downloaded syn v0.15.35 [INFO] [stderr] Downloaded gtk v0.6.0 [INFO] [stderr] Downloaded glib v0.7.1 [INFO] [stderr] Downloaded cc v1.0.36 [INFO] [stderr] Downloaded cairo-rs v0.6.0 [INFO] [stderr] Downloaded pango v0.6.0 [INFO] [stderr] Downloaded glib-sys v0.8.0 [INFO] [stderr] Downloaded gobject-sys v0.8.0 [INFO] [stderr] Downloaded libc v0.2.54 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e1e7e17ef4e56fec017530fcdd31049029f5bfa3d82d102ba0a1a84f1520a93f [INFO] running `Command { std: "docker" "start" "-a" "e1e7e17ef4e56fec017530fcdd31049029f5bfa3d82d102ba0a1a84f1520a93f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e1e7e17ef4e56fec017530fcdd31049029f5bfa3d82d102ba0a1a84f1520a93f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e1e7e17ef4e56fec017530fcdd31049029f5bfa3d82d102ba0a1a84f1520a93f", kill_on_drop: false }` [INFO] [stdout] e1e7e17ef4e56fec017530fcdd31049029f5bfa3d82d102ba0a1a84f1520a93f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2016189906f63c8bad624f8cfb9cb273485daccd755b95dfeefb949808c7d4a3 [INFO] running `Command { std: "docker" "start" "-a" "2016189906f63c8bad624f8cfb9cb273485daccd755b95dfeefb949808c7d4a3", kill_on_drop: false }` [INFO] [stderr] Compiling pkg-config v0.3.14 [INFO] [stderr] Compiling libc v0.2.54 [INFO] [stderr] Checking bitflags v1.0.4 [INFO] [stderr] Checking lazy_static v1.3.0 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling gio v0.6.0 [INFO] [stderr] Compiling cairo-rs v0.6.0 [INFO] [stderr] Checking fragile v0.3.0 [INFO] [stderr] Compiling pango v0.6.0 [INFO] [stderr] Compiling gdk-pixbuf v0.6.0 [INFO] [stderr] Compiling syn v0.15.35 [INFO] [stderr] Compiling atk v0.6.0 [INFO] [stderr] Compiling gdk v0.10.0 [INFO] [stderr] Compiling gtk v0.6.0 [INFO] [stderr] Checking unicode-width v0.1.5 [INFO] [stderr] Checking objekt v0.1.2 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking vec_map v0.8.1 [INFO] [stderr] Compiling glib-sys v0.8.0 [INFO] [stderr] Compiling gobject-sys v0.8.0 [INFO] [stderr] Compiling gio-sys v0.8.0 [INFO] [stderr] Compiling pango-sys v0.8.0 [INFO] [stderr] Compiling cairo-sys-rs v0.8.0 [INFO] [stderr] Compiling gdk-pixbuf-sys v0.8.0 [INFO] [stderr] Compiling gdk-sys v0.8.0 [INFO] [stderr] Compiling atk-sys v0.8.0 [INFO] [stderr] Compiling gtk-sys v0.8.0 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Compiling quote v0.6.12 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking glib v0.7.1 [INFO] [stderr] Compiling objekt-clonable-impl v0.2.2 [INFO] [stderr] Checking objekt-clonable v0.2.2 [INFO] [stderr] Checking circuit_simulator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::models::node::Node` [INFO] [stdout] --> src/models/gates/signal_gate.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::models::node::Node; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/models/gates/signal_gate.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/models/gates/signal_gate.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/models/visitor.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/models/visitor.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::Ref` [INFO] [stdout] --> src/models/visitor.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::cell::Ref; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/models/visitor.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::exit` [INFO] [stdout] --> src/circuit_checking/strategies/lax_check_strategy.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::process::exit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::circuit_checking::checkers::infinite_loop_checker::InfiniteLoopChecker` [INFO] [stdout] --> src/tests/strategy.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::circuit_checking::checkers::infinite_loop_checker::InfiniteLoopChecker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::circuit_checking::checker::Checker` [INFO] [stdout] --> src/tests/strategy.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::circuit_checking::checker::Checker; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::circuit::Circuit` [INFO] [stdout] --> src/tests/strategy.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::models::circuit::Circuit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::node::Node` [INFO] [stdout] --> src/tests/strategy.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::models::node::Node; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::node::Node` [INFO] [stdout] --> src/models/gates/signal_gate.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::models::node::Node; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::output::Output` [INFO] [stdout] --> src/tests/strategy.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::models::output::Output; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/tests/strategy.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::gates::not_gate::NotGate` [INFO] [stdout] --> src/tests/strategy.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::models::gates::not_gate::NotGate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::gates::and_gate::AndGate` [INFO] [stdout] --> src/tests/strategy.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::models::gates::and_gate::AndGate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::models::gates::signal_gate::SignalGate` [INFO] [stdout] --> src/tests/strategy.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::models::gates::signal_gate::SignalGate; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/models/gates/signal_gate.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/tests/strategy.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/models/gates/signal_gate.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/models/visitor.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/models/visitor.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::Ref` [INFO] [stdout] --> src/models/visitor.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::cell::Ref; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/models/visitor.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process::exit` [INFO] [stdout] --> src/circuit_checking/strategies/lax_check_strategy.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::process::exit; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/models/node.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | _ => None [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/models/node.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 58 | Node::Not(gate) => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 62 | Node::Or(gate) => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 66 | Node::And(gate) => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 70 | Node::Probe(gate) => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 75 | _ => None [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/models/gates/or_gate.rs:19:31 [INFO] [stdout] | [INFO] [stdout] 19 | Output::False(delay) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/creation/builders/circuit_builder.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let mut nodes: RefCell>>> = RefCell::new(vec![]); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:19:35 [INFO] [stdout] | [INFO] [stdout] 19 | inputs: RefCell::new(vec![false_signal_node.clone()]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:25:45 [INFO] [stdout] | [INFO] [stdout] 25 | let circuit = Circuit::new(RefCell::new(all_nodes), RefCell::new(vec![not_node.clone()])); [INFO] [stdout] | ------------ ^^^^^^^^^ expected `Vec>>`, found `Vec>` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Vec>>` [INFO] [stdout] found struct `Vec>` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /rustc/f609b7e0586f81fefb3523e3e17adf779ac416be/library/core/src/cell.rs:839:18 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:25:75 [INFO] [stdout] | [INFO] [stdout] 25 | let circuit = Circuit::new(RefCell::new(all_nodes), RefCell::new(vec![not_node.clone()])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:38:35 [INFO] [stdout] | [INFO] [stdout] 38 | inputs: RefCell::new(vec![false_signal_node.clone()]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 41 | inputs: RefCell::new(vec![not_node.clone()]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CompositeNodeStruct` is never constructed [INFO] [stdout] --> src/models/node.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct CompositeNodeStruct { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_delay` is never used [INFO] [stdout] --> src/models/circuit.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl Circuit { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn get_delay(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/creation/factories/node_factory.rs:37:12 [INFO] [stdout] | [INFO] [stdout] 36 | impl<'a> LowBindingNodeFactory { [INFO] [stdout] | ------------------------------ associated function in this implementation [INFO] [stdout] 37 | pub fn new() -> LowBindingNodeFactory { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show_error` is never used [INFO] [stdout] --> src/gui.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn show_error(error: &str) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `open_file_chooser` is never used [INFO] [stdout] --> src/gui.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | pub fn open_file_chooser() -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Warning` is never constructed [INFO] [stdout] --> src/circuit_checking/checker_message.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | pub enum CheckerMessage { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 2 | Warning(&'static str), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/main.rs:38:32 [INFO] [stdout] | [INFO] [stdout] 38 | Err(message) => panic!(message) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 38 | Err(message) => panic!("{}", message) [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Map` that must be used [INFO] [stdout] --> src/models/circuit.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | / self.get_output_nodes().iter().map(|node| delays.push(match node.borrow().get_output() { [INFO] [stdout] 35 | | Output::True(delay) => delay.clone(), [INFO] [stdout] 36 | | Output::False(delay) => delay.clone(), [INFO] [stdout] 37 | | })); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = note: iterators are lazy and do nothing unless consumed [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 34 | let _ = self.get_output_nodes().iter().map(|node| delays.push(match node.borrow().get_output() { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `Iterator::map` call that discard the iterator's values [INFO] [stdout] --> src/models/circuit.rs:34:40 [INFO] [stdout] | [INFO] [stdout] 34 | self.get_output_nodes().iter().map(|node| delays.push(match node.borrow().get_output() { [INFO] [stdout] | ^ ------ [INFO] [stdout] | | | [INFO] [stdout] | __________________________________________|___this function returns `()`, which is likely not what you wanted [INFO] [stdout] | | ________________________________________| [INFO] [stdout] | | | [INFO] [stdout] 35 | | | Output::True(delay) => delay.clone(), [INFO] [stdout] 36 | | | Output::False(delay) => delay.clone(), [INFO] [stdout] 37 | | | })); [INFO] [stdout] | | | -^ after this call to map, the resulting iterator is `impl Iterator`, which means the only information carried by the iterator is the number of items [INFO] [stdout] | | |__________|| [INFO] [stdout] | |____________| [INFO] [stdout] | called `Iterator::map` with callable that returns `()` [INFO] [stdout] | [INFO] [stdout] = note: `Iterator::map`, like many of the methods on `Iterator`, gets executed lazily, meaning that its effects won't be visible until it is iterated [INFO] [stdout] = note: `#[warn(map_unit_fn)]` on by default [INFO] [stdout] help: you might have meant to use `Iterator::for_each` [INFO] [stdout] | [INFO] [stdout] 34 | self.get_output_nodes().iter().for_each(|node| delays.push(match node.borrow().get_output() { [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/creation/circuit_loader.rs:16:37 [INFO] [stdout] | [INFO] [stdout] 16 | Some(message) => panic!(message), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 16 | Some(message) => panic!("{}", message), [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/creation/circuit_loader.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | Some(message) => panic!(message), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to `Display` the message [INFO] [stdout] | [INFO] [stdout] 22 | Some(message) => panic!("{}", message), [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 32 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:43:24 [INFO] [stdout] | [INFO] [stdout] 43 | and_node.add_input(and_node.clone()); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] note: method defined here [INFO] [stdout] --> src/models/node.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 43 | pub fn add_input(&mut self, node: Rc>) { [INFO] [stdout] | ^^^^^^^^^ ----------------------- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:49:45 [INFO] [stdout] | [INFO] [stdout] 49 | let circuit = Circuit::new(RefCell::new(all_nodes), RefCell::new(vec![not_node.clone()])); [INFO] [stdout] | ------------ ^^^^^^^^^ expected `Vec>>`, found `Vec>` [INFO] [stdout] | | [INFO] [stdout] | arguments to this function are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Vec>>` [INFO] [stdout] found struct `Vec>` [INFO] [stdout] note: associated function defined here [INFO] [stdout] --> /rustc/f609b7e0586f81fefb3523e3e17adf779ac416be/library/core/src/cell.rs:839:18 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/tests/strategy.rs:49:75 [INFO] [stdout] | [INFO] [stdout] 49 | let circuit = Circuit::new(RefCell::new(all_nodes), RefCell::new(vec![not_node.clone()])); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ expected `Rc>`, found `Rc` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Rc>` [INFO] [stdout] found struct `Rc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/models/node.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 75 | _ => None [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/models/node.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 58 | Node::Not(gate) => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 62 | Node::Or(gate) => { [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 66 | Node::And(gate) => { [INFO] [stdout] | --------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 70 | Node::Probe(gate) => { [INFO] [stdout] | ----------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 75 | _ => None [INFO] [stdout] | ^ ...and 1 other patterns collectively make this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `delay` [INFO] [stdout] --> src/models/gates/or_gate.rs:19:31 [INFO] [stdout] | [INFO] [stdout] 19 | Output::False(delay) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_delay` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/creation/builders/circuit_builder.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | let mut nodes: RefCell>>> = RefCell::new(vec![]); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 8 previous errors; 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `circuit_simulator` (bin "circuit_simulator" test) due to 9 previous errors; 11 warnings emitted [INFO] running `Command { std: "docker" "inspect" "2016189906f63c8bad624f8cfb9cb273485daccd755b95dfeefb949808c7d4a3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2016189906f63c8bad624f8cfb9cb273485daccd755b95dfeefb949808c7d4a3", kill_on_drop: false }` [INFO] [stdout] 2016189906f63c8bad624f8cfb9cb273485daccd755b95dfeefb949808c7d4a3