[INFO] cloning repository https://github.com/cmigliaccio00/PdS_RUST
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cmigliaccio00/PdS_RUST" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmigliaccio00%2FPdS_RUST", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmigliaccio00%2FPdS_RUST'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7739ca9473e9ef1e954f6c245c0ad8664bfb9732
[INFO] checking cmigliaccio00/PdS_RUST/7739ca9473e9ef1e954f6c245c0ad8664bfb9732 against master#8a65ee08296b36342bf7c3cdc15312ccbc357227 for pr-142704
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcmigliaccio00%2FPdS_RUST" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/cmigliaccio00/PdS_RUST on toolchain 8a65ee08296b36342bf7c3cdc15312ccbc357227
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/cmigliaccio00/PdS_RUST
[INFO] finished tweaking git repo https://github.com/cmigliaccio00/PdS_RUST
[INFO] tweaked toml for git repo https://github.com/cmigliaccio00/PdS_RUST written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/cmigliaccio00/PdS_RUST 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" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d64e07d04a65a23a35fff68ffe4ed5590ca00c5ba74a796c39627583a022f58c
[INFO] running `Command { std: "docker" "start" "-a" "d64e07d04a65a23a35fff68ffe4ed5590ca00c5ba74a796c39627583a022f58c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d64e07d04a65a23a35fff68ffe4ed5590ca00c5ba74a796c39627583a022f58c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d64e07d04a65a23a35fff68ffe4ed5590ca00c5ba74a796c39627583a022f58c", kill_on_drop: false }`
[INFO] [stdout] d64e07d04a65a23a35fff68ffe4ed5590ca00c5ba74a796c39627583a022f58c
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8a65ee08296b36342bf7c3cdc15312ccbc357227" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 892c3cef4fdca5a5d8bd340b9885c822a303dac8b733ea43ae3ea15d4af5d635
[INFO] running `Command { std: "docker" "start" "-a" "892c3cef4fdca5a5d8bd340b9885c822a303dac8b733ea43ae3ea15d4af5d635", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]     Checking utf8parse v0.2.1
[INFO] [stderr]     Checking anstyle v1.0.6
[INFO] [stderr]     Checking colorchoice v1.0.0
[INFO] [stderr]     Checking anstyle-query v1.0.2
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]     Checking clap_lex v0.7.0
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling zerocopy v0.8.0-alpha.6
[INFO] [stderr]    Compiling serde v1.0.203
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling serde_json v1.0.120
[INFO] [stderr]    Compiling thiserror v1.0.61
[INFO] [stderr]     Checking anstyle-parse v0.2.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking es3_lab2 v0.1.0 (/opt/rustwide/workdir/Laboratori/lab2/es3_lab2)
[INFO] [stderr]     Checking es2_lab2 v0.1.0 (/opt/rustwide/workdir/Laboratori/lab2/es2_lab2)
[INFO] [stdout] warning: unused import: `std::arch::x86_64::__m128`
[INFO] [stdout]  --> Laboratori/lab2/es3_lab2/src/lib.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::arch::x86_64::__m128;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> Laboratori/lab2/es3_lab2/src/lib.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::collections::VecDeque;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 if(self.tail==self.cap){
[INFO] [stdout]    |                   ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 37 -                 if(self.tail==self.cap){
[INFO] [stdout] 37 +                 if self.tail==self.cap {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (self.head==self.tail && self.size==0){
[INFO] [stdout]    |                ^                                    ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (self.head==self.tail && self.size==0){
[INFO] [stdout] 50 +             if self.head==self.tail && self.size==0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:59:20
[INFO] [stdout]    |
[INFO] [stdout] 59 |                 if (self.head==self.cap){
[INFO] [stdout]    |                    ^                   ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 59 -                 if (self.head==self.cap){
[INFO] [stdout] 59 +                 if self.head==self.cap {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:80:26
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 let size=(self.cap-self.head);
[INFO] [stdout]    |                          ^                  ^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 80 -                 let size=(self.cap-self.head);
[INFO] [stdout] 80 +                 let size=self.cap-self.head;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking ryu v1.0.18
[INFO] [stderr]     Checking Closures v0.1.0 (/opt/rustwide/workdir/Esempi/Closures)
[INFO] [stdout] warning: unused variable: `size`
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:80:21
[INFO] [stdout]    |
[INFO] [stdout] 80 |                 let size=(self.cap-self.head);
[INFO] [stdout]    |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_size`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> Laboratori/lab2/es2_lab2/src/lib.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> Laboratori/lab2/es3_lab2/src/lib.rs:110:25
[INFO] [stdout]     |
[INFO] [stdout] 110 |         fn index(&self, index: usize) -> &Self::Output {
[INFO] [stdout]     |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `index`
[INFO] [stdout]    --> Laboratori/lab2/es3_lab2/src/lib.rs:116:33
[INFO] [stdout]     |
[INFO] [stdout] 116 |         fn index_mut(&mut self, index: usize) -> &mut Self::Output {
[INFO] [stdout]     |                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_index`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `C` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:19:21
[INFO] [stdout]    |
[INFO] [stdout] 19 |             let mut C:CircularBuffer<T>=CircularBuffer{array: Vec::with_capacity(capacity),
[INFO] [stdout]    |                     ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: path statement drops value
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |             C;
[INFO] [stdout]    |             ^^ help: use `drop` to clarify the intent: `drop(C);`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(path_statements)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Tmp` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es3_lab2/src/lib.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let Tmp=self.tail;
[INFO] [stdout]    |                     ^^^ help: convert the identifier to snake case: `tmp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> Laboratori/lab2/es2_lab2/src/lib.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::VecDeque;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::VecDeque`
[INFO] [stdout]  --> Laboratori/lab2/es2_lab2/src/lib.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use std::collections::VecDeque;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> Laboratori/lab2/es2_lab2/src/lib.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 |     use std::error::Error;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Output`
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     use std::process::Output;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_rankingbarrier v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_rankingbarrier)
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> Esempi/Closures/src/lib.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |             if(num==1){
[INFO] [stdout]    |               ^      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 15 -             if(num==1){
[INFO] [stdout] 15 +             if num==1 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `miocampo` is never read
[INFO] [stdout]  --> Esempi/Closures/src/lib.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     pub struct Cagata{
[INFO] [stdout]   |                ------ field in this struct
[INFO] [stdout] 4 |         miocampo:i32
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `Closures` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `closures`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> EsempiEsame/tde_rankingbarrier/src/lib.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::ops::Deref;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_dispatcher v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_dispatcher)
[INFO] [stderr]     Checking tde_looper v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_looper)
[INFO] [stdout] warning: unused import: `std::iter::Rev`
[INFO] [stdout]  --> EsempiEsame/tde_dispatcher/src/lib.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::iter::Rev;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SendError`
[INFO] [stdout]  --> EsempiEsame/tde_dispatcher/src/lib.rs:3:54
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::sync::mpsc::{channel, Receiver, Sender, SendError};
[INFO] [stdout]   |                                                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> EsempiEsame/tde_dispatcher/src/lib.rs:44:18
[INFO] [stdout]    |
[INFO] [stdout] 44 |                  el.send(msg.clone());
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 44 |                  let _ = el.send(msg.clone());
[INFO] [stdout]    |                  +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Debug` and `Display`
[INFO] [stdout]  --> EsempiEsame/tde_looper/src/lib.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::fmt::{Debug, Display};
[INFO] [stdout]   |                    ^^^^^  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_dq v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_dq)
[INFO] [stderr]     Checking polimorfismo v0.1.0 (/opt/rustwide/workdir/EsempiEsame/polimorfismo)
[INFO] [stderr]     Checking tde_cache v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_cache)
[INFO] [stderr]     Checking tde_exchanger v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_exchanger)
[INFO] [stdout] warning: unused variable: `cv`
[INFO] [stdout]   --> EsempiEsame/tde_looper/src/lib.rs:77:23
[INFO] [stdout]    |
[INFO] [stdout] 77 |             let  (lk, cv) = &*self.pair;
[INFO] [stdout]    |                       ^^ help: if this is intentional, prefix it with an underscore: `_cv`
[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]   --> EsempiEsame/tde_looper/src/lib.rs:78:17
[INFO] [stdout]    |
[INFO] [stdout] 78 |             let mut data = lk.lock().unwrap();
[INFO] [stdout]    |                 ----^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `process` is never read
[INFO] [stdout]   --> EsempiEsame/tde_looper/src/lib.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub struct Looper<T:Send+Clone>{
[INFO] [stdout]    |                ------ field in this struct
[INFO] [stdout] 35 |         pair: Arc<(Mutex<Coda<T>>, Condvar)>,
[INFO] [stdout] 36 |         process: fn(T)->(),
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: structure field `Real` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 18 |         Real: f64,
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case: `real`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_multichannel v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_multichannel)
[INFO] [stdout] warning: structure field `Imag` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |         Imag: f64
[INFO] [stdout]    |         ^^^^ help: convert the identifier to snake case (notice the capitalization): `imag`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:31:20
[INFO] [stdout]    |
[INFO] [stdout] 31 |         pub fn new(R: f64, I:f64)->Self{
[INFO] [stdout]    |                    ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_execlimiter v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_execlimiter)
[INFO] [stdout] warning: variable `I` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:31:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |         pub fn new(R: f64, I:f64)->Self{
[INFO] [stdout]    |                            ^ help: convert the identifier to snake case (notice the capitalization): `i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `R` should have a snake case name
[INFO] [stdout]   --> Laboratori/lab2/es2_lab2/src/lib.rs:36:26
[INFO] [stdout]    |
[INFO] [stdout] 36 |         pub fn from_real(R:f64)->Self{
[INFO] [stdout]    |                          ^ help: convert the identifier to snake case: `r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res_tx`
[INFO] [stdout]   --> EsempiEsame/tde_exchanger/src/lib.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 |             let res_tx = self.tx.send(t).ok()?;
[INFO] [stdout]    |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_res_tx`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking iteratori v0.1.0 (/opt/rustwide/workdir/EsempiEsame/iteratori)
[INFO] [stderr]     Checking collezioni v0.1.0 (/opt/rustwide/workdir/EsempiEsame/collezioni)
[INFO] [stdout] warning: unused import: `Condvar`
[INFO] [stdout]  --> EsempiEsame/tde_multichannel/src/lib.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use std::sync::{Condvar, Mutex};
[INFO] [stdout]   |                     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> EsempiEsame/tde_multichannel/src/lib.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             if (!canali.is_empty()){
[INFO] [stdout]    |                ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 24 -             if (!canali.is_empty()){
[INFO] [stdout] 24 +             if !canali.is_empty() {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tde_mpmc v0.1.0 (/opt/rustwide/workdir/EsempiEsame/tde_mpmc)
[INFO] [stdout] warning: unused import: `std::collections::LinkedList`
[INFO] [stdout]  --> EsempiEsame/iteratori/src/lib.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     use std::collections::LinkedList;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> EsempiEsame/tde_execlimiter/src/lib.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 |     use std::time::Duration;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `er`
[INFO] [stdout]   --> EsempiEsame/tde_mpmc/src/lib.rs:83:33
[INFO] [stdout]    |
[INFO] [stdout] 83 |                 LockResult::Err(er) =>{
[INFO] [stdout]    |                                 ^^ help: if this is intentional, prefix it with an underscore: `_er`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Ord` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T> Key<T>{
[INFO] [stdout]    |             ^^^^^^ the trait `Ord` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:23
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                       ^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Ord`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::cmp::Ord> Key<T>{
[INFO] [stdout]    |           +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Hash` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:31:13
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T> Key<T>{
[INFO] [stdout]    |             ^^^^^^ the trait `Hash` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                             ^^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Hash`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::hash::Hash> Key<T>{
[INFO] [stdout]    |           +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Ord` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |         pub fn new(chiave:T)->Self{
[INFO] [stdout]    |                               ^^^^ the trait `Ord` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:23
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                       ^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Ord`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::cmp::Ord> Key<T>{
[INFO] [stdout]    |           +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Hash` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |         pub fn new(chiave:T)->Self{
[INFO] [stdout]    |                               ^^^^ the trait `Hash` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                             ^^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Hash`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::hash::Hash> Key<T>{
[INFO] [stdout]    |           +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `iteratori::it`
[INFO] [stdout]  --> EsempiEsame/iteratori/tests/unit_test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use iteratori::it;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Ord` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Self{chiave}
[INFO] [stdout]    |             ^^^^ the trait `Ord` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:23
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                       ^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Ord`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::cmp::Ord> Key<T>{
[INFO] [stdout]    |           +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `T: Hash` is not satisfied
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:33:13
[INFO] [stdout]    |
[INFO] [stdout] 33 |             Self{chiave}
[INFO] [stdout]    |             ^^^^ the trait `Hash` is not implemented for `T`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Key`
[INFO] [stdout]   --> EsempiEsame/collezioni/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 |     pub struct Key<T: Ord + Hash>{
[INFO] [stdout]    |                             ^^^^ required by this bound in `Key`
[INFO] [stdout] help: consider restricting type parameter `T` with trait `Hash`
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl<T: std::hash::Hash> Key<T>{
[INFO] [stdout]    |           +++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::mpsc::Receiver`
[INFO] [stdout]  --> EsempiEsame/tde_multichannel/tests/unit_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::mpsc::Receiver;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sync_channel`
[INFO] [stdout]  --> EsempiEsame/tde_exchanger/tests/unit_tests.rs:1:32
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::sync::mpsc::{channel, sync_channel};
[INFO] [stdout]   |                                ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> EsempiEsame/tde_exchanger/tests/unit_tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `collezioni` (lib) due to 6 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> EsempiEsame/tde_multichannel/tests/unit_tests.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let r = mc.subscribe();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h1`
[INFO] [stdout]   --> EsempiEsame/tde_multichannel/tests/unit_tests.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     let h1 = thread::spawn(move||{
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_h1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r2`
[INFO] [stdout]   --> EsempiEsame/tde_multichannel/tests/unit_tests.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     let r2 = mc1.subscribe();
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_r2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]   --> EsempiEsame/tde_exchanger/tests/unit_tests.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let t1 = thread::spawn(move||{
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t2`
[INFO] [stdout]   --> EsempiEsame/tde_exchanger/tests/unit_tests.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let t2 = thread::spawn(move||{
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_t2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h1`
[INFO] [stdout]   --> EsempiEsame/tde_exchanger/tests/unit_tests.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let h1 = thread::spawn(move||{
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_h1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> EsempiEsame/tde_cache/tests/unit_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> Laboratori/lab2/es2_lab2/tests/complex_numbers.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |     for i in 1..10{
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> EsempiEsame/tde_multichannel/tests/unit_tests.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |         mc2.send(4);
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |         let _ = mc2.send(4);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ris`
[INFO] [stdout]    --> EsempiEsame/tde_mpmc/tests/unit_test.rs:122:20
[INFO] [stdout]     |
[INFO] [stdout] 122 |     while let Some(ris) = my_mpmc1.recv(){
[INFO] [stdout]     |                    ^^^ help: if this is intentional, prefix it with an underscore: `_ris`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dato`
[INFO] [stdout]    --> EsempiEsame/tde_mpmc/tests/unit_test.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |         let dato=my.chan.lock();
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_dato`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "892c3cef4fdca5a5d8bd340b9885c822a303dac8b733ea43ae3ea15d4af5d635", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "892c3cef4fdca5a5d8bd340b9885c822a303dac8b733ea43ae3ea15d4af5d635", kill_on_drop: false }`
[INFO] [stdout] 892c3cef4fdca5a5d8bd340b9885c822a303dac8b733ea43ae3ea15d4af5d635
