[INFO] cloning repository https://github.com/zorglub3/pcn
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zorglub3/pcn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzorglub3%2Fpcn", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzorglub3%2Fpcn'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5adcf63a775f9def9b91c1e68b3eb041555962c7
[INFO] checking zorglub3/pcn against master#61cc47e367d7be91e13bcd01e4e96e0e233d4f6d for pr-133502-19
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzorglub3%2Fpcn" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/zorglub3/pcn
[INFO] finished tweaking git repo https://github.com/zorglub3/pcn
[INFO] tweaked toml for git repo https://github.com/zorglub3/pcn written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/zorglub3/pcn on toolchain 61cc47e367d7be91e13bcd01e4e96e0e233d4f6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/zorglub3/pcn 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" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xattr v1.5.0
[INFO] [stderr]   Downloaded tensorflow-internal-macros v0.0.3
[INFO] [stderr]   Downloaded tensorflow-sys v0.24.0
[INFO] [stderr]   Downloaded quote v1.0.39
[INFO] [stderr]   Downloaded openssl-sys v0.9.106
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.22
[INFO] [stderr]   Downloaded protobuf v2.27.1
[INFO] [stderr]   Downloaded zerocopy v0.8.22
[INFO] [stderr]   Downloaded syn v2.0.99
[INFO] [stderr]   Downloaded cudarc v0.16.6
[INFO] [stderr]   Downloaded bzip2-sys v0.1.13+1.0.8
[INFO] [stderr]   Downloaded libc v0.2.170
[INFO] [stderr]   Downloaded tensorflow v0.21.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8fa1d5454c4048930406745d4ed1ad354ce4b1a03b8480fb8c13d89295c33cb4
[INFO] running `Command { std: "docker" "start" "-a" "8fa1d5454c4048930406745d4ed1ad354ce4b1a03b8480fb8c13d89295c33cb4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8fa1d5454c4048930406745d4ed1ad354ce4b1a03b8480fb8c13d89295c33cb4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fa1d5454c4048930406745d4ed1ad354ce4b1a03b8480fb8c13d89295c33cb4", kill_on_drop: false }`
[INFO] [stdout] 8fa1d5454c4048930406745d4ed1ad354ce4b1a03b8480fb8c13d89295c33cb4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+61cc47e367d7be91e13bcd01e4e96e0e233d4f6d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1133af156ca7127a58078e69da8d481482879112ade5b870e203d983173b2b98
[INFO] running `Command { std: "docker" "start" "-a" "1133af156ca7127a58078e69da8d481482879112ade5b870e203d983173b2b98", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling libc v0.2.170
[INFO] [stderr]    Compiling getrandom v0.3.1
[INFO] [stderr]    Compiling zerocopy v0.8.22
[INFO] [stderr]    Compiling cudarc v0.16.6
[INFO] [stderr]     Checking libloading v0.8.8
[INFO] [stderr]     Checking indexmap v2.7.1
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking petgraph v0.7.1
[INFO] [stderr]    Compiling quote v1.0.39
[INFO] [stderr]    Compiling syn v2.0.99
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking thiserror v2.0.12
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]     Checking pcn v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `petgraph::graph::Graph`
[INFO] [stdout]  --> src/spec.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use petgraph::graph::Graph;
[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: `petgraph::graph::Graph`
[INFO] [stdout]  --> src/spec.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use petgraph::graph::Graph;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Tanh`, `ReLu`, `LeakyReLu`, and `SoftPlus` are never constructed
[INFO] [stdout]  --> src/activation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum ActivationFn {
[INFO] [stdout]   |          ------------ variants in this enum
[INFO] [stdout] 2 |     Tanh,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 3 |     ReLu,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 4 |     LeakyReLu(f64),
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 5 |     SoftPlus,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `eval`, `diff`, and `diff_mul` are never used
[INFO] [stdout]   --> src/activation.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl ActivationFn {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout]  9 |     pub fn eval(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn diff(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn diff_mul(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_vecs_mul`, `mul_col_vec`, `mul_vec_add`, and `trans_mul_vec_add` are never used
[INFO] [stdout]    --> src/dmatrix.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl<T: Mul<Output = T> + Default + AddAssign + Copy> DMatrix<T> {
[INFO] [stdout]     | ---------------------------------------------------------------- methods in this implementation
[INFO] [stdout]  53 |     pub fn add_vecs_mul(&mut self, alpha: T, v1: &[T], v2: &[T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn mul_col_vec(&self, v: &[T], c: usize) -> T {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn mul_vec_add(&self, input: &[T], output: &mut [T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn trans_mul_vec_add(&self, input: &[T], output: &mut [T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/dmatrix.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl<T: Clone> DMatrix<T> {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn new(rows: usize, cols: usize, default: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/pcn.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 |     UndefinedNode(NodeId),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PCError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     UndefinedNode(NodeId),
[INFO] [stdout] 13 +     UndefinedNode(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EdgeFromSensor`, `NotSensor`, and `NotMemory` are never constructed
[INFO] [stdout]   --> src/pcn.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum PCError {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 12 |     EdgeFromSensor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     UndefinedNode(NodeId),
[INFO] [stdout] 14 |     NotSensor(NodeId),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 15 |     NotMemory(NodeId),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PCError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal`, `Sensor`, and `Memory` are never constructed
[INFO] [stdout]   --> src/pcn.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum PCNode {
[INFO] [stdout]    |                 ------ variants in this enum
[INFO] [stdout] 19 |     Internal {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     Sensor {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     Memory {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/pcn.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl PCNode {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  40 |     pub fn new_internal(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub fn new_sensor(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn new_memory(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     pub fn energy(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn set_predictions(&mut self, p: &[f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn compute_error(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn activation(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn activation_diff(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn activation_diff_mul(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/pcn.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl PCEdge {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 216 |     pub fn new(from_size: usize, to_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/pcn.rs:238:12
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl PCN {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] 238 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn is_sensor(&self, node_id: &NodeId) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn is_internal(&self, node_id: &NodeId) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn node_size(&self, node_id: &NodeId) -> Result<usize, PCError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn add_internal_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn add_sensor_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn add_memory_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn connect_nodes(&mut self, source: &NodeId, target: &NodeId) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn compute_predictions(&mut self) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub fn compute_errors(&mut self) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn compute_values(&mut self, gamma: f64) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn inference_steps(&mut self, gamma: f64, steps: usize) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 |     pub fn learning_step(&mut self, alpha: f64) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     pub fn get_node_values(&self, node_id: &NodeId) -> Result<&[f64], PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn update_node_values(&mut self, node_id: &NodeId, delta: &[f64]) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     pub fn get_node_errors(&self, node_id: &NodeId) -> Result<&[f64], PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 457 |     pub fn get_node_energy(&self, node_id: &NodeId) -> Result<f64, PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn set_sensor_values(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 |     pub fn set_layer_values(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeId` is never constructed
[INFO] [stdout]  --> src/spec.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct NodeId(usize);
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/spec.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl NodeId {
[INFO] [stdout]   | ----------- associated function in this implementation
[INFO] [stdout] 9 |     pub(crate) fn new(index: usize) -> Self {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeMode` is never used
[INFO] [stdout]   --> src/spec.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum NodeMode {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/spec.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]   --> src/spec.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Spec` is never constructed
[INFO] [stdout]   --> src/spec.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Spec {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_sensor_node`, `add_edge`, and `build_model` are never used
[INFO] [stdout]   --> src/spec.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl Spec {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 38 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn add_sensor_node(&mut self, size: usize, function: ActivationFn) -> NodeId {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn add_edge(&mut self, from: NodeId, to: NodeId) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn build_model(&self) -> PCN {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Tanh`, `ReLu`, `LeakyReLu`, and `SoftPlus` are never constructed
[INFO] [stdout]  --> src/activation.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum ActivationFn {
[INFO] [stdout]   |          ------------ variants in this enum
[INFO] [stdout] 2 |     Tanh,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 3 |     ReLu,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 4 |     LeakyReLu(f64),
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout] 5 |     SoftPlus,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `eval`, `diff`, and `diff_mul` are never used
[INFO] [stdout]   --> src/activation.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl ActivationFn {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout]  9 |     pub fn eval(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn diff(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn diff_mul(&self, input: &[f64], output: &mut [f64]) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_vecs_mul`, `mul_col_vec`, `mul_vec_add`, and `trans_mul_vec_add` are never used
[INFO] [stdout]    --> src/dmatrix.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl<T: Mul<Output = T> + Default + AddAssign + Copy> DMatrix<T> {
[INFO] [stdout]     | ---------------------------------------------------------------- methods in this implementation
[INFO] [stdout]  53 |     pub fn add_vecs_mul(&mut self, alpha: T, v1: &[T], v2: &[T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn mul_col_vec(&self, v: &[T], c: usize) -> T {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn mul_vec_add(&self, input: &[T], output: &mut [T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn trans_mul_vec_add(&self, input: &[T], output: &mut [T]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/dmatrix.rs:189:12
[INFO] [stdout]     |
[INFO] [stdout] 167 | impl<T: Clone> DMatrix<T> {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn new(rows: usize, cols: usize, default: T) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/pcn.rs:13:19
[INFO] [stdout]    |
[INFO] [stdout] 13 |     UndefinedNode(NodeId),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PCError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 13 -     UndefinedNode(NodeId),
[INFO] [stdout] 13 +     UndefinedNode(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `EdgeFromSensor`, `NotSensor`, and `NotMemory` are never constructed
[INFO] [stdout]   --> src/pcn.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum PCError {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 12 |     EdgeFromSensor,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     UndefinedNode(NodeId),
[INFO] [stdout] 14 |     NotSensor(NodeId),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 15 |     NotMemory(NodeId),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PCError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Internal`, `Sensor`, and `Memory` are never constructed
[INFO] [stdout]   --> src/pcn.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub(crate) enum PCNode {
[INFO] [stdout]    |                 ------ variants in this enum
[INFO] [stdout] 19 |     Internal {
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     Sensor {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     Memory {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/pcn.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl PCNode {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  40 |     pub fn new_internal(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  49 |     pub fn new_sensor(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn new_memory(size: usize, activation_fn: ActivationFn) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  75 |     pub fn energy(&self) -> f64 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn set_predictions(&mut self, p: &[f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn compute_error(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn activation(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn activation_diff(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 167 |     pub fn activation_diff_mul(&self, output: &mut [f64]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/pcn.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl PCEdge {
[INFO] [stdout]     | ----------- associated function in this implementation
[INFO] [stdout] 216 |     pub fn new(from_size: usize, to_size: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/pcn.rs:238:12
[INFO] [stdout]     |
[INFO] [stdout] 237 | impl PCN {
[INFO] [stdout]     | -------- associated items in this implementation
[INFO] [stdout] 238 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     pub fn is_sensor(&self, node_id: &NodeId) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn is_internal(&self, node_id: &NodeId) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 256 |     pub fn node_size(&self, node_id: &NodeId) -> Result<usize, PCError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn add_internal_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn add_sensor_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn add_memory_node(&mut self, node_size: usize, activation_fn: ActivationFn) -> NodeId {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 285 |     pub fn connect_nodes(&mut self, source: &NodeId, target: &NodeId) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 301 |     pub fn compute_predictions(&mut self) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 329 |     pub fn compute_errors(&mut self) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn compute_values(&mut self, gamma: f64) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn inference_steps(&mut self, gamma: f64, steps: usize) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 383 |     pub fn learning_step(&mut self, alpha: f64) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 |     pub fn get_node_values(&self, node_id: &NodeId) -> Result<&[f64], PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 424 |     pub fn update_node_values(&mut self, node_id: &NodeId, delta: &[f64]) -> Result<(), PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 |     pub fn get_node_errors(&self, node_id: &NodeId) -> Result<&[f64], PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 457 |     pub fn get_node_energy(&self, node_id: &NodeId) -> Result<f64, PCError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 464 |     pub fn set_sensor_values(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 493 |     pub fn set_layer_values(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeId` is never constructed
[INFO] [stdout]  --> src/spec.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct NodeId(usize);
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]  --> src/spec.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | impl NodeId {
[INFO] [stdout]   | ----------- associated function in this implementation
[INFO] [stdout] 9 |     pub(crate) fn new(index: usize) -> Self {
[INFO] [stdout]   |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeMode` is never used
[INFO] [stdout]   --> src/spec.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum NodeMode {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/spec.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Edge` is never constructed
[INFO] [stdout]   --> src/spec.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 27 | struct Edge {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Spec` is never constructed
[INFO] [stdout]   --> src/spec.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Spec {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `add_sensor_node`, `add_edge`, and `build_model` are never used
[INFO] [stdout]   --> src/spec.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | impl Spec {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 38 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn add_sensor_node(&mut self, size: usize, function: ActivationFn) -> NodeId {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     pub fn add_edge(&mut self, from: NodeId, to: NodeId) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn build_model(&self) -> PCN {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `pcn::ActivationFn`
[INFO] [stdout]  --> examples/assoc_mem.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use pcn::ActivationFn;
[INFO] [stdout]   |     ^^^^^------------
[INFO] [stdout]   |     |    |
[INFO] [stdout]   |     |    help: a similar name exists in the module: `activation`
[INFO] [stdout]   |     no `ActivationFn` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `pcn::PCN`
[INFO] [stdout]  --> examples/assoc_mem.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pcn::PCN;
[INFO] [stdout]   |     ^^^^^---
[INFO] [stdout]   |     |    |
[INFO] [stdout]   |     |    help: a similar name exists in the module: `pcn`
[INFO] [stdout]   |     no `PCN` in the root
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pcn` (example "assoc_mem") due to 2 previous errors
[INFO] running `Command { std: "docker" "inspect" "1133af156ca7127a58078e69da8d481482879112ade5b870e203d983173b2b98", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1133af156ca7127a58078e69da8d481482879112ade5b870e203d983173b2b98", kill_on_drop: false }`
[INFO] [stdout] 1133af156ca7127a58078e69da8d481482879112ade5b870e203d983173b2b98
