[INFO] cloning repository https://github.com/simonvandel/fcbf
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/simonvandel/fcbf" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonvandel%2Ffcbf", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonvandel%2Ffcbf'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 08439f0dc2e4d00fb8a3d6391842d47cdfe54178
[INFO] checking simonvandel/fcbf against master#33fdb797f59421c7bbecaa4588ed5d7a31a9494a for pr-87190-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonvandel%2Ffcbf" "/workspace/builds/worker-3/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/simonvandel/fcbf on toolchain 33fdb797f59421c7bbecaa4588ed5d7a31a9494a
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/simonvandel/fcbf
[INFO] finished tweaking git repo https://github.com/simonvandel/fcbf
[INFO] tweaked toml for git repo https://github.com/simonvandel/fcbf written to /workspace/builds/worker-3/source/Cargo.toml
[INFO] crate git repo https://github.com/simonvandel/fcbf already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] Blocking waiting for file lock on package cache
[INFO] [stderr] Blocking waiting for file lock on package cache
[INFO] [stderr] Downloading crates ...
[INFO] [stderr] Downloaded csv-core v0.1.4
[INFO] [stderr] Downloaded noisy_float v0.1.4
[INFO] [stderr] Downloaded serde v1.0.45
[INFO] [stderr] Downloaded csv v1.0.0-beta.5
[INFO] [stderr] Downloaded float-cmp v0.4.0
[INFO] [stderr] Downloaded env_logger v0.5.9
[INFO] [stderr] Downloaded ndarray v0.11.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c5565c011fe73cb531c4ef1dae11a7544cb8db335584ee23db4e549302ad789b
[INFO] running `Command { std: "docker" "start" "-a" "c5565c011fe73cb531c4ef1dae11a7544cb8db335584ee23db4e549302ad789b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c5565c011fe73cb531c4ef1dae11a7544cb8db335584ee23db4e549302ad789b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5565c011fe73cb531c4ef1dae11a7544cb8db335584ee23db4e549302ad789b", kill_on_drop: false }`
[INFO] [stdout] c5565c011fe73cb531c4ef1dae11a7544cb8db335584ee23db4e549302ad789b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 318afa7ac41596c7603d691eb7a758a83c192b1e78f7cf7c85ce40a22135a369
[INFO] running `Command { std: "docker" "start" "-a" "318afa7ac41596c7603d691eb7a758a83c192b1e78f7cf7c85ce40a22135a369", kill_on_drop: false }`
[INFO] [stderr] Checking libc v0.2.40
[INFO] [stderr] Checking num-traits v0.2.2
[INFO] [stderr] Compiling matrixmultiply v0.1.14
[INFO] [stderr] Checking lazy_static v1.0.0
[INFO] [stderr] Compiling regex v0.2.11
[INFO] [stderr] Checking cfg-if v0.1.3
[INFO] [stderr] Checking rawpointer v0.1.0
[INFO] [stderr] Compiling ndarray v0.11.2
[INFO] [stderr] Checking quick-error v1.2.1
[INFO] [stderr] Checking serde v1.0.45
[INFO] [stderr] Checking termcolor v0.3.6
[INFO] [stderr] Checking indexmap v1.0.1
[INFO] [stderr] Checking regex-syntax v0.5.6
[INFO] [stderr] Checking itertools v0.7.8
[INFO] [stderr] Checking log v0.4.1
[INFO] [stderr] Checking thread_local v0.3.5
[INFO] [stderr] Checking humantime v1.1.1
[INFO] [stderr] Checking memchr v2.0.1
[INFO] [stderr] Checking atty v0.2.10
[INFO] [stderr] Checking rand v0.4.2
[INFO] [stderr] Checking aho-corasick v0.6.4
[INFO] [stderr] Checking csv-core v0.1.4
[INFO] [stderr] Checking num-traits v0.1.43
[INFO] [stderr] Checking num-complex v0.1.43
[INFO] [stderr] Checking float-cmp v0.4.0
[INFO] [stderr] Checking noisy_float v0.1.4
[INFO] [stderr] Checking ordered-float v0.5.0
[INFO] [stderr] Checking env_logger v0.5.9
[INFO] [stderr] Checking csv v1.0.0-beta.5
[INFO] [stderr] Checking quickcheck v0.6.2
[INFO] [stderr] Checking fcbf v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `ApproxEq`, `Ulps`
[INFO] [stdout] --> src/information_theory.rs:127:27
[INFO] [stdout] |
[INFO] [stdout] 127 | use self::float_cmp::{ApproxEq, ApproxEqRatio, Ulps};
[INFO] [stdout] | ^^^^^^^^ ^^^^
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout] --> src/information_theory.rs:168:46
[INFO] [stdout] |
[INFO] [stdout] 168 | return TestResult::discard();;
[INFO] [stdout] | ^ help: remove this semicolon
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unused variable: `cacher`
[INFO] [stdout] --> src/main.rs:31:37
[INFO] [stdout] |
[INFO] [stdout] 31 | fn symmetric_uncertainty_cached<'a>(cacher: &mut MyCacher, x: &'a Col<'a>, y: &'a Col<'a>) -> ValueType {
[INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cacher`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `x` does not live long enough
[INFO] [stdout] --> src/main.rs:106:26
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 106 | let cols: Vec
= x.gencolumns()
[INFO] [stdout] | ^ borrowed value does not live long enough
[INFO] [stdout] ...
[INFO] [stdout] 110 | / Col {
[INFO] [stdout] 111 | | idx,
[INFO] [stdout] 112 | | values: f_i,
[INFO] [stdout] 113 | | }}).collect();
[INFO] [stdout] | |_________- returning this value requires that `x` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `x` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `c` does not live long enough
[INFO] [stdout] --> src/main.rs:118:64
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ------------------------------------------^^-------
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `c` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 122 | }
[INFO] [stdout] | - `c` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `f_y` does not live long enough
[INFO] [stdout] --> src/main.rs:118:68
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ----------------------------------------------^^^^-
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `f_y` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `f_y` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0505]: cannot move out of `c` because it is borrowed
[INFO] [stdout] --> src/main.rs:120:38
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ---------------------------------------------------
[INFO] [stdout] | | |
[INFO] [stdout] | | borrow of `c` occurs here
[INFO] [stdout] | argument requires that `c` is borrowed for `'x`
[INFO] [stdout] 119 | if su_i_c >= threshold {
[INFO] [stdout] 120 | s_list.push(Feature{col: c, su_target: su_i_c});
[INFO] [stdout] | ^ move out of `c` occurs here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `s_list` does not live long enough
[INFO] [stdout] --> src/main.rs:130:27
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ^^^^^^---------------------
[INFO] [stdout] | |
[INFO] [stdout] | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `s_list` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `s_list` does not live long enough
[INFO] [stdout] --> src/main.rs:132:26
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 132 | let unexplored = s_list.iter().skip(cur_feature_idx + 1).filter(|f_q| {
[INFO] [stdout] | ^^^^^^-------
[INFO] [stdout] | |
[INFO] [stdout] | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `s_list` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `f_y` does not live long enough
[INFO] [stdout] --> src/main.rs:138:86
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 132 | let unexplored = s_list.iter().skip(cur_feature_idx + 1).filter(|f_q| {
[INFO] [stdout] | ----- value captured here
[INFO] [stdout] ...
[INFO] [stdout] 138 | let f_q_su_target = symmetric_uncertainty_cached(&mut cacher, &f_q.col, &f_y);
[INFO] [stdout] | -----------------------------------------------------^^^-
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `f_y` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `f_y` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0506]: cannot assign to `s_list` because it is borrowed
[INFO] [stdout] --> src/main.rs:153:9
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ---------------------------
[INFO] [stdout] | |
[INFO] [stdout] | borrow of `s_list` occurs here
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 153 | s_list = new_s_list.clone();
[INFO] [stdout] | ^^^^^^ assignment to borrowed `s_list` occurs here
[INFO] [stdout] |
[INFO] [stdout] = note: borrow occurs due to deref coercion to `[Feature]`
[INFO] [stdout] note: deref defined here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0502]: cannot borrow `s_list` as mutable because it is also borrowed as immutable
[INFO] [stdout] --> src/main.rs:159:5
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ---------------------------
[INFO] [stdout] | |
[INFO] [stdout] | immutable borrow occurs here
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 159 | s_list.sort_by(|a, b| {
[INFO] [stdout] | ^^^^^^ mutable borrow occurs here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] warning: unused variable: `cacher`
[INFO] [stdout] --> src/main.rs:31:37
[INFO] [stdout] |
[INFO] [stdout] 31 | fn symmetric_uncertainty_cached<'a>(cacher: &mut MyCacher, x: &'a Col<'a>, y: &'a Col<'a>) -> ValueType {
[INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_cacher`
[INFO] [stdout] |
[INFO] [stdout] = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error: aborting due to 9 previous errors; 1 warning emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] Some errors have detailed explanations: E0502, E0505, E0506, E0597.
[INFO] [stdout]
[INFO] [stdout] For more information about an error, try `rustc --explain E0502`.
[INFO] [stdout]
[INFO] [stderr] error: could not compile `fcbf` due to 10 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0597]: `x` does not live long enough
[INFO] [stdout] --> src/main.rs:106:26
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 106 | let cols: Vec = x.gencolumns()
[INFO] [stdout] | ^ borrowed value does not live long enough
[INFO] [stdout] ...
[INFO] [stdout] 110 | / Col {
[INFO] [stdout] 111 | | idx,
[INFO] [stdout] 112 | | values: f_i,
[INFO] [stdout] 113 | | }}).collect();
[INFO] [stdout] | |_________- returning this value requires that `x` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `x` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `c` does not live long enough
[INFO] [stdout] --> src/main.rs:118:64
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ------------------------------------------^^-------
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `c` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 122 | }
[INFO] [stdout] | - `c` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `f_y` does not live long enough
[INFO] [stdout] --> src/main.rs:118:68
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ----------------------------------------------^^^^-
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `f_y` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `f_y` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0505]: cannot move out of `c` because it is borrowed
[INFO] [stdout] --> src/main.rs:120:38
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 118 | let su_i_c = symmetric_uncertainty_cached(&mut cacher, &c, &f_y);
[INFO] [stdout] | ---------------------------------------------------
[INFO] [stdout] | | |
[INFO] [stdout] | | borrow of `c` occurs here
[INFO] [stdout] | argument requires that `c` is borrowed for `'x`
[INFO] [stdout] 119 | if su_i_c >= threshold {
[INFO] [stdout] 120 | s_list.push(Feature{col: c, su_target: su_i_c});
[INFO] [stdout] | ^ move out of `c` occurs here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `s_list` does not live long enough
[INFO] [stdout] --> src/main.rs:130:27
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ^^^^^^---------------------
[INFO] [stdout] | |
[INFO] [stdout] | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `s_list` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `s_list` does not live long enough
[INFO] [stdout] --> src/main.rs:132:26
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 132 | let unexplored = s_list.iter().skip(cur_feature_idx + 1).filter(|f_q| {
[INFO] [stdout] | ^^^^^^-------
[INFO] [stdout] | |
[INFO] [stdout] | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `s_list` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0597]: `f_y` does not live long enough
[INFO] [stdout] --> src/main.rs:138:86
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 132 | let unexplored = s_list.iter().skip(cur_feature_idx + 1).filter(|f_q| {
[INFO] [stdout] | ----- value captured here
[INFO] [stdout] ...
[INFO] [stdout] 138 | let f_q_su_target = symmetric_uncertainty_cached(&mut cacher, &f_q.col, &f_y);
[INFO] [stdout] | -----------------------------------------------------^^^-
[INFO] [stdout] | | |
[INFO] [stdout] | | borrowed value does not live long enough
[INFO] [stdout] | argument requires that `f_y` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 172 | }
[INFO] [stdout] | - `f_y` dropped here while still borrowed
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0506]: cannot assign to `s_list` because it is borrowed
[INFO] [stdout] --> src/main.rs:153:9
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ---------------------------
[INFO] [stdout] | |
[INFO] [stdout] | borrow of `s_list` occurs here
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 153 | s_list = new_s_list.clone();
[INFO] [stdout] | ^^^^^^ assignment to borrowed `s_list` occurs here
[INFO] [stdout] |
[INFO] [stdout] = note: borrow occurs due to deref coercion to `[Feature]`
[INFO] [stdout] note: deref defined here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error[E0502]: cannot borrow `s_list` as mutable because it is also borrowed as immutable
[INFO] [stdout] --> src/main.rs:159:5
[INFO] [stdout] |
[INFO] [stdout] 91 | pub fn fcbf<'x>(
[INFO] [stdout] | -- lifetime `'x` defined here
[INFO] [stdout] ...
[INFO] [stdout] 130 | while let Some(f_p) = s_list.get(cur_feature_idx) {
[INFO] [stdout] | ---------------------------
[INFO] [stdout] | |
[INFO] [stdout] | immutable borrow occurs here
[INFO] [stdout] | argument requires that `s_list` is borrowed for `'x`
[INFO] [stdout] ...
[INFO] [stdout] 159 | s_list.sort_by(|a, b| {
[INFO] [stdout] | ^^^^^^ mutable borrow occurs here
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error: aborting due to 9 previous errors; 3 warnings emitted
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] Some errors have detailed explanations: E0502, E0505, E0506, E0597.
[INFO] [stdout]
[INFO] [stdout] For more information about an error, try `rustc --explain E0502`.
[INFO] [stdout]
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "318afa7ac41596c7603d691eb7a758a83c192b1e78f7cf7c85ce40a22135a369", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "318afa7ac41596c7603d691eb7a758a83c192b1e78f7cf7c85ce40a22135a369", kill_on_drop: false }`
[INFO] [stdout] 318afa7ac41596c7603d691eb7a758a83c192b1e78f7cf7c85ce40a22135a369