[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 try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsimonvandel%2Ffcbf" "/workspace/builds/worker-10/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-10/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/simonvandel/fcbf on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", 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-10/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" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] Downloading crates ...
[INFO] [stderr] Downloaded noisy_float v0.1.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8544eda87beee1680ffe7845104d29fc0050385a25d0c2c06cdd79f6ded189db
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "8544eda87beee1680ffe7845104d29fc0050385a25d0c2c06cdd79f6ded189db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8544eda87beee1680ffe7845104d29fc0050385a25d0c2c06cdd79f6ded189db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8544eda87beee1680ffe7845104d29fc0050385a25d0c2c06cdd79f6ded189db", kill_on_drop: false }`
[INFO] [stdout] 8544eda87beee1680ffe7845104d29fc0050385a25d0c2c06cdd79f6ded189db
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4483e507b8d5887c5878cf173756ef3dada7348e3e098326a9848a4ea2edd54e
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "4483e507b8d5887c5878cf173756ef3dada7348e3e098326a9848a4ea2edd54e", kill_on_drop: false }`
[INFO] [stderr] Blocking waiting for file lock on package cache
[INFO] [stderr] Compiling matrixmultiply v0.1.14
[INFO] [stderr] Checking rawpointer v0.1.0
[INFO] [stderr] Compiling ndarray v0.11.2
[INFO] [stderr] Checking serde v1.0.45
[INFO] [stderr] Checking fnv v1.0.6
[INFO] [stderr] Checking atty v0.2.10
[INFO] [stderr] Checking unreachable v1.0.0
[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 csv-core v0.1.4
[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 thread_local v0.3.5
[INFO] [stderr] Checking regex v0.2.11
[INFO] [stderr] Checking env_logger v0.5.9
[INFO] [stderr] Checking quickcheck v0.6.2
[INFO] [stderr] Checking csv v1.0.0-beta.5
[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]
[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; 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`
[INFO] [stderr]
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[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]
[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" "4483e507b8d5887c5878cf173756ef3dada7348e3e098326a9848a4ea2edd54e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4483e507b8d5887c5878cf173756ef3dada7348e3e098326a9848a4ea2edd54e", kill_on_drop: false }`
[INFO] [stdout] 4483e507b8d5887c5878cf173756ef3dada7348e3e098326a9848a4ea2edd54e