[INFO] cloning repository https://github.com/Coxless/rust-1d-fem
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Coxless/rust-1d-fem" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCoxless%2Frust-1d-fem", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCoxless%2Frust-1d-fem'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 526453b10895de89c9e6526befdb68bab6c86ad0
[INFO] checking Coxless/rust-1d-fem against try#438eb4c1a1c3841523d7f672601e8adbe04cff28 for pr-147589-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCoxless%2Frust-1d-fem" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Coxless/rust-1d-fem
[INFO] finished tweaking git repo https://github.com/Coxless/rust-1d-fem
[INFO] tweaked toml for git repo https://github.com/Coxless/rust-1d-fem written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Coxless/rust-1d-fem on toolchain 438eb4c1a1c3841523d7f672601e8adbe04cff28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Coxless/rust-1d-fem 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" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d37de61d9f2b0228b660dea821f4813b4b224462760a6e2825a782943bf7f261
[INFO] running `Command { std: "docker" "start" "-a" "d37de61d9f2b0228b660dea821f4813b4b224462760a6e2825a782943bf7f261", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d37de61d9f2b0228b660dea821f4813b4b224462760a6e2825a782943bf7f261", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d37de61d9f2b0228b660dea821f4813b4b224462760a6e2825a782943bf7f261", kill_on_drop: false }`
[INFO] [stdout] d37de61d9f2b0228b660dea821f4813b4b224462760a6e2825a782943bf7f261
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc6e8bb4a2800e01b575d8a8f06d28d4415cb39c087e7418c98e233f4e6747dd
[INFO] running `Command { std: "docker" "start" "-a" "fc6e8bb4a2800e01b575d8a8f06d28d4415cb39c087e7418c98e233f4e6747dd", kill_on_drop: false }`
[INFO] [stderr]     Checking bytemuck v1.23.0
[INFO] [stderr]     Checking libloading v0.8.7
[INFO] [stderr]    Compiling cc v1.2.23
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v6.0.0
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling pathfinder_simd v0.5.4
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]    Compiling font-kit v0.14.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking gif v0.12.0
[INFO] [stderr]     Checking lapack-sys v0.14.0
[INFO] [stderr]     Checking cblas-sys v0.1.4
[INFO] [stderr]     Checking float-ord v0.3.2
[INFO] [stderr]     Checking chrono v0.4.41
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking wide v0.7.32
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking pathfinder_geometry v0.5.1
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling freetype-sys v0.20.1
[INFO] [stderr]     Checking cauchy v0.4.0
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking plotters-bitmap v0.3.7
[INFO] [stderr]     Checking simba v0.9.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling katexit v0.1.5
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]     Checking thiserror v2.0.12
[INFO] [stderr]     Checking lax v0.17.0
[INFO] [stderr]     Checking ndarray-linalg v0.17.0
[INFO] [stderr]     Checking nalgebra v0.33.2
[INFO] [stderr]     Checking rust-1d-fem v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:16:38
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total];
[INFO] [stdout]    |                            ----------^^^^^^^^^^-
[INFO] [stdout]    |                            |         |
[INFO] [stdout]    |                            |         expected `usize`, found `i32`
[INFO] [stdout]    |                            arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total.try_into().unwrap()]; node_total];
[INFO] [stdout]    |                                                ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:16:51
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total];
[INFO] [stdout]    |                       ----------------------------^^^^^^^^^^-
[INFO] [stdout]    |                       |                           |
[INFO] [stdout]    |                       |                           expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total.try_into().unwrap()];
[INFO] [stdout]    |                                                             ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:16:38
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total];
[INFO] [stdout]    |                            ----------^^^^^^^^^^-
[INFO] [stdout]    |                            |         |
[INFO] [stdout]    |                            |         expected `usize`, found `i32`
[INFO] [stdout]    |                            arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total.try_into().unwrap()]; node_total];
[INFO] [stdout]    |                                                ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 |   let mut vec_b_glo = vec![0.0; node_total];
[INFO] [stdout]    |                       ----------^^^^^^^^^^-
[INFO] [stdout]    |                       |         |
[INFO] [stdout]    |                       |         expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 17 |   let mut vec_b_glo = vec![0.0; node_total.try_into().unwrap()];
[INFO] [stdout]    |                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:20:51
[INFO] [stdout]    |
[INFO] [stdout] 20 |   let mut mat_a_ele = vec![vec![vec![0.0; 3]; 3]; ele_total];
[INFO] [stdout]    |                       ----------------------------^^^^^^^^^-
[INFO] [stdout]    |                       |                           |
[INFO] [stdout]    |                       |                           expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 20 |   let mut mat_a_ele = vec![vec![vec![0.0; 3]; 3]; ele_total.try_into().unwrap()];
[INFO] [stdout]    |                                                            ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:16:51
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total];
[INFO] [stdout]    |                       ----------------------------^^^^^^^^^^-
[INFO] [stdout]    |                       |                           |
[INFO] [stdout]    |                       |                           expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 16 |   let mut mat_a_glo = vec![vec![0.0; node_total]; node_total.try_into().unwrap()];
[INFO] [stdout]    |                                                             ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 |   let mut vec_b_ele = vec![vec![0.0; 3]; ele_total];
[INFO] [stdout]    |                       -------------------^^^^^^^^^-
[INFO] [stdout]    |                       |                  |
[INFO] [stdout]    |                       |                  expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 21 |   let mut vec_b_ele = vec![vec![0.0; 3]; ele_total.try_into().unwrap()];
[INFO] [stdout]    |                                                   ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:17:33
[INFO] [stdout]    |
[INFO] [stdout] 17 |   let mut vec_b_glo = vec![0.0; node_total];
[INFO] [stdout]    |                       ----------^^^^^^^^^^-
[INFO] [stdout]    |                       |         |
[INFO] [stdout]    |                       |         expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 17 |   let mut vec_b_glo = vec![0.0; node_total.try_into().unwrap()];
[INFO] [stdout]    |                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:20:51
[INFO] [stdout]    |
[INFO] [stdout] 20 |   let mut mat_a_ele = vec![vec![vec![0.0; 3]; 3]; ele_total];
[INFO] [stdout]    |                       ----------------------------^^^^^^^^^-
[INFO] [stdout]    |                       |                           |
[INFO] [stdout]    |                       |                           expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 20 |   let mut mat_a_ele = vec![vec![vec![0.0; 3]; 3]; ele_total.try_into().unwrap()];
[INFO] [stdout]    |                                                            ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 |   let mut vec_b_ele = vec![vec![0.0; 3]; ele_total];
[INFO] [stdout]    |                       -------------------^^^^^^^^^-
[INFO] [stdout]    |                       |                  |
[INFO] [stdout]    |                       |                  expected `usize`, found `i32`
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> /rustc/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/alloc/src/vec/mod.rs:3474:8
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 21 |   let mut vec_b_ele = vec![vec![0.0; 3]; ele_total.try_into().unwrap()];
[INFO] [stdout]    |                                                   ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[f64]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:24:61
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                             ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[f64]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[f64]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:24:81
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                                                 ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[f64]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:24:49
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[f64]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:24:61
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                             ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[f64]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[f64]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:24:81
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                                                 ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[f64]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<f64>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> src/main.rs:24:49
[INFO] [stdout]    |
[INFO] [stdout] 24 |   let length: Vec<f64> = (0..ele_total).map(|e| (node_x_glo[e + 1] - node_x_glo[e]).abs()).collect();
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<Vec<{float}>>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |         mat_a_ele[e][i][j] = ((-1i32).pow((i + 1) as u32) * (-1i32).pow((j + 1) as u32)) as f64 / length[e];
[INFO] [stdout]    |                   ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<Vec<{float}>>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<Vec<{float}>>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |       vec_b_ele[e][i] = -func_f * length[e] / 2.0;
[INFO] [stdout]    |                 ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<Vec<{float}>>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:30:19
[INFO] [stdout]    |
[INFO] [stdout] 30 |         mat_a_ele[e][i][j] = ((-1i32).pow((i + 1) as u32) * (-1i32).pow((j + 1) as u32)) as f64 / length[e];
[INFO] [stdout]    |                   ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<Vec<{float}>>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<Vec<{float}>>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mat_a_glo[e + i][e + j] += mat_a_ele[e][i][j];
[INFO] [stdout]    |                   ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<Vec<{float}>>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:40:46
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mat_a_glo[e + i][e + j] += mat_a_ele[e][i][j];
[INFO] [stdout]    |                                              ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<Vec<{float}>>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<Vec<{float}>>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |       vec_b_ele[e][i] = -func_f * length[e] / 2.0;
[INFO] [stdout]    |                 ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[{float}]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |       vec_b_glo[e + i] += vec_b_ele[e][i];
[INFO] [stdout]    |                 ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[{float}]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<{float}>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:42:37
[INFO] [stdout]    |
[INFO] [stdout] 42 |       vec_b_glo[e + i] += vec_b_ele[e][i];
[INFO] [stdout]    |                                     ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mat_a_glo[e + i][e + j] += mat_a_ele[e][i][j];
[INFO] [stdout]    |                   ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<Vec<{float}>>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:40:46
[INFO] [stdout]    |
[INFO] [stdout] 40 |         mat_a_glo[e + i][e + j] += mat_a_ele[e][i][j];
[INFO] [stdout]    |                                              ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<Vec<{float}>>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<Vec<{float}>>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |   boundary(node_total - 1, f64::INFINITY, beta, &mut mat_a_glo, &mut vec_b_glo);
[INFO] [stdout]    |   -------- ^^^^^^^^^^^^^^ expected `usize`, found `i32`
[INFO] [stdout]    |   |
[INFO] [stdout]    |   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/main.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn boundary(node_num_glo: usize, dirichlet: f64, neumann: f64, mat_a_glo: &mut Vec<Vec<f64>>, vec_b_glo: &mut Vec<f64>) {
[INFO] [stdout]    |    ^^^^^^^^ -------------------
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 48 |   boundary((node_total - 1).try_into().unwrap(), f64::INFINITY, beta, &mut mat_a_glo, &mut vec_b_glo);
[INFO] [stdout]    |            +              +++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[{float}]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:42:17
[INFO] [stdout]    |
[INFO] [stdout] 42 |       vec_b_glo[e + i] += vec_b_ele[e][i];
[INFO] [stdout]    |                 ^^^^^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[{float}]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<{float}>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the type `[Vec<{float}>]` cannot be indexed by `i32`
[INFO] [stdout]   --> src/main.rs:42:37
[INFO] [stdout]    |
[INFO] [stdout] 42 |       vec_b_glo[e + i] += vec_b_ele[e][i];
[INFO] [stdout]    |                                     ^ slice indices are of type `usize` or ranges of `usize`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `SliceIndex<[Vec<{float}>]>` is not implemented for `i32`
[INFO] [stdout]    = help: the following other types implement trait `SliceIndex<T>`:
[INFO] [stdout]              `usize` implements `SliceIndex<ByteStr>`
[INFO] [stdout]              `usize` implements `SliceIndex<[T]>`
[INFO] [stdout]    = note: required for `Vec<Vec<{float}>>` to implement `Index<i32>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 |   boundary(node_total - 1, f64::INFINITY, beta, &mut mat_a_glo, &mut vec_b_glo);
[INFO] [stdout]    |   -------- ^^^^^^^^^^^^^^ expected `usize`, found `i32`
[INFO] [stdout]    |   |
[INFO] [stdout]    |   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: function defined here
[INFO] [stdout]   --> src/main.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn boundary(node_num_glo: usize, dirichlet: f64, neumann: f64, mat_a_glo: &mut Vec<Vec<f64>>, vec_b_glo: &mut Vec<f64>) {
[INFO] [stdout]    |    ^^^^^^^^ -------------------
[INFO] [stdout] help: you can convert an `i32` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 48 |   boundary((node_total - 1).try_into().unwrap(), f64::INFINITY, beta, &mut mat_a_glo, &mut vec_b_glo);
[INFO] [stdout]    |            +              +++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0282, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0282, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rust-1d-fem` (bin "rust-1d-fem" test) due to 15 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `rust-1d-fem` (bin "rust-1d-fem") due to 15 previous errors
[INFO] running `Command { std: "docker" "inspect" "fc6e8bb4a2800e01b575d8a8f06d28d4415cb39c087e7418c98e233f4e6747dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc6e8bb4a2800e01b575d8a8f06d28d4415cb39c087e7418c98e233f4e6747dd", kill_on_drop: false }`
[INFO] [stdout] fc6e8bb4a2800e01b575d8a8f06d28d4415cb39c087e7418c98e233f4e6747dd
