[INFO] updating cached repository JNhua/blockchain_Rust [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/JNhua/blockchain_Rust [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/JNhua/blockchain_Rust" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/JNhua/blockchain_Rust"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/JNhua/blockchain_Rust'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/JNhua/blockchain_Rust" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/JNhua/blockchain_Rust"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/JNhua/blockchain_Rust'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 113d9d1b4be9a69a141267eda5bcfc2fc991bd71 [INFO] sha for GitHub repo JNhua/blockchain_Rust: 113d9d1b4be9a69a141267eda5bcfc2fc991bd71 [INFO] validating manifest of JNhua/blockchain_Rust on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of JNhua/blockchain_Rust on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing JNhua/blockchain_Rust [INFO] finished frobbing JNhua/blockchain_Rust [INFO] frobbed toml for JNhua/blockchain_Rust written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/JNhua/blockchain_Rust/Cargo.toml [INFO] started frobbing JNhua/blockchain_Rust [INFO] finished frobbing JNhua/blockchain_Rust [INFO] frobbed toml for JNhua/blockchain_Rust written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/JNhua/blockchain_Rust/Cargo.toml [INFO] crate JNhua/blockchain_Rust already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking JNhua/blockchain_Rust against try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-6/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/JNhua/blockchain_Rust:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 7c42ca8cf8ee574787df64dec0927f66a2ef81a3e94f8be01708b9129d7aef05 [INFO] running `"docker" "start" "-a" "7c42ca8cf8ee574787df64dec0927f66a2ef81a3e94f8be01708b9129d7aef05"` [INFO] [stderr] Checking net2 v0.2.33 [INFO] [stderr] Checking nix v0.5.1 [INFO] [stderr] Compiling syn v0.15.32 [INFO] [stderr] Compiling openssl v0.9.24 [INFO] [stderr] Checking rust-crypto v0.2.36 [INFO] [stderr] Checking uuid v0.7.4 [INFO] [stderr] Checking miow v0.1.5 [INFO] [stderr] Checking mio v0.5.1 [INFO] [stderr] Checking native-tls v0.1.5 [INFO] [stderr] Checking hyper-native-tls v0.2.4 [INFO] [stderr] Checking requests v0.0.30 [INFO] [stderr] Compiling serde_derive v1.0.90 [INFO] [stderr] Checking canteen v0.5.1 [INFO] [stderr] Checking blockchain_Rust v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::de::Deserializer` [INFO] [stderr] --> src/main.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | use serde::de::Deserializer; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/main.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `serde::de::Deserializer` [INFO] [stderr] --> src/main.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | use serde::de::Deserializer; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stderr] --> src/main.rs:213:29 [INFO] [stderr] | [INFO] [stderr] 213 | static mut BC: Blockchain = Blockchain::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.nodes"` as `"BC.nodes"` is a static item [INFO] [stderr] --> src/main.rs:314:30 [INFO] [stderr] | [INFO] [stderr] 314 | total_nodes: BC.nodes, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.nodes` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.chain"` as `"BC.chain"` is a static item [INFO] [stderr] --> src/main.rs:335:28 [INFO] [stderr] | [INFO] [stderr] 335 | new_chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.chain` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.chain"` as `"BC.chain"` is a static item [INFO] [stderr] --> src/main.rs:349:24 [INFO] [stderr] | [INFO] [stderr] 349 | chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.chain` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0597]: `port` does not live long enough [INFO] [stderr] --> src/main.rs:360:18 [INFO] [stderr] | [INFO] [stderr] 360 | parser.refer(&mut port).add_option(&["-p", "-port"], [INFO] [stderr] | ^^^^^^^^^ borrowed value does not live long enough [INFO] [stderr] ... [INFO] [stderr] 375 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `port` dropped here while still borrowed [INFO] [stderr] | borrow might be used here, when `parser` is dropped and runs the destructor for type `argparse::ArgumentParser<'_>` [INFO] [stderr] | [INFO] [stderr] = note: values in a scope are dropped in the opposite order they are defined [INFO] [stderr] [INFO] [stderr] error[E0503]: cannot use `port` because it was mutably borrowed [INFO] [stderr] --> src/main.rs:365:28 [INFO] [stderr] | [INFO] [stderr] 360 | parser.refer(&mut port).add_option(&["-p", "-port"], [INFO] [stderr] | --------- borrow of `port` occurs here [INFO] [stderr] ... [INFO] [stderr] 365 | cnt.bind(("127.0.0.1", port)); [INFO] [stderr] | ^^^^ use of borrowed `port` [INFO] [stderr] ... [INFO] [stderr] 375 | } [INFO] [stderr] | - borrow might be used here, when `parser` is dropped and runs the destructor for type `argparse::ArgumentParser<'_>` [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:223:22 [INFO] [stderr] | [INFO] [stderr] 223 | let last_block = BC.last_block(); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | BC.new_transaction("0".to_string(), NI.to_string(), 1); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:229:17 [INFO] [stderr] | [INFO] [stderr] 229 | let block = BC.new_block(proof, None); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:261:21 [INFO] [stderr] | [INFO] [stderr] 261 | let index: i8 = BC.new_transaction(values["sender"].to_string(), [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:287:16 [INFO] [stderr] | [INFO] [stderr] 287 | chain: BC.chain.clone(), [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:288:17 [INFO] [stderr] | [INFO] [stderr] 288 | length: BC.chain.len(), [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:303:17 [INFO] [stderr] | [INFO] [stderr] 303 | BC.register_node(node.as_str().unwrap().to_string()); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:314:30 [INFO] [stderr] | [INFO] [stderr] 314 | total_nodes: BC.nodes, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:322:20 [INFO] [stderr] | [INFO] [stderr] 322 | let replaced = BC.resolve_conflicts(); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:335:28 [INFO] [stderr] | [INFO] [stderr] 335 | new_chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:349:24 [INFO] [stderr] | [INFO] [stderr] 349 | chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error: aborting due to 17 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0015, E0133, E0503, E0507, E0597. [INFO] [stderr] For more information about an error, try `rustc --explain E0015`. [INFO] [stderr] error: Could not compile `blockchain_Rust`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0015]: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stderr] --> src/main.rs:213:29 [INFO] [stderr] | [INFO] [stderr] 213 | static mut BC: Blockchain = Blockchain::new(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.nodes"` as `"BC.nodes"` is a static item [INFO] [stderr] --> src/main.rs:314:30 [INFO] [stderr] | [INFO] [stderr] 314 | total_nodes: BC.nodes, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.nodes` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.chain"` as `"BC.chain"` is a static item [INFO] [stderr] --> src/main.rs:335:28 [INFO] [stderr] | [INFO] [stderr] 335 | new_chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.chain` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `"BC.chain"` as `"BC.chain"` is a static item [INFO] [stderr] --> src/main.rs:349:24 [INFO] [stderr] | [INFO] [stderr] 349 | chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ move occurs because `BC.chain` has type `std::vec::Vec`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0597]: `port` does not live long enough [INFO] [stderr] --> src/main.rs:360:18 [INFO] [stderr] | [INFO] [stderr] 360 | parser.refer(&mut port).add_option(&["-p", "-port"], [INFO] [stderr] | ^^^^^^^^^ borrowed value does not live long enough [INFO] [stderr] ... [INFO] [stderr] 375 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `port` dropped here while still borrowed [INFO] [stderr] | borrow might be used here, when `parser` is dropped and runs the destructor for type `argparse::ArgumentParser<'_>` [INFO] [stderr] | [INFO] [stderr] = note: values in a scope are dropped in the opposite order they are defined [INFO] [stderr] [INFO] [stderr] error[E0503]: cannot use `port` because it was mutably borrowed [INFO] [stderr] --> src/main.rs:365:28 [INFO] [stderr] | [INFO] [stderr] 360 | parser.refer(&mut port).add_option(&["-p", "-port"], [INFO] [stderr] | --------- borrow of `port` occurs here [INFO] [stderr] ... [INFO] [stderr] 365 | cnt.bind(("127.0.0.1", port)); [INFO] [stderr] | ^^^^ use of borrowed `port` [INFO] [stderr] ... [INFO] [stderr] 375 | } [INFO] [stderr] | - borrow might be used here, when `parser` is dropped and runs the destructor for type `argparse::ArgumentParser<'_>` [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:223:22 [INFO] [stderr] | [INFO] [stderr] 223 | let last_block = BC.last_block(); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 227 | BC.new_transaction("0".to_string(), NI.to_string(), 1); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:229:17 [INFO] [stderr] | [INFO] [stderr] 229 | let block = BC.new_block(proof, None); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:261:21 [INFO] [stderr] | [INFO] [stderr] 261 | let index: i8 = BC.new_transaction(values["sender"].to_string(), [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:287:16 [INFO] [stderr] | [INFO] [stderr] 287 | chain: BC.chain.clone(), [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:288:17 [INFO] [stderr] | [INFO] [stderr] 288 | length: BC.chain.len(), [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:303:17 [INFO] [stderr] | [INFO] [stderr] 303 | BC.register_node(node.as_str().unwrap().to_string()); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:314:30 [INFO] [stderr] | [INFO] [stderr] 314 | total_nodes: BC.nodes, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:322:20 [INFO] [stderr] | [INFO] [stderr] 322 | let replaced = BC.resolve_conflicts(); [INFO] [stderr] | ^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:335:28 [INFO] [stderr] | [INFO] [stderr] 335 | new_chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error[E0133]: use of mutable static is unsafe and requires unsafe function or block [INFO] [stderr] --> src/main.rs:349:24 [INFO] [stderr] | [INFO] [stderr] 349 | chain: BC.chain, [INFO] [stderr] | ^^^^^^^^ use of mutable static [INFO] [stderr] | [INFO] [stderr] = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior [INFO] [stderr] [INFO] [stderr] error: aborting due to 17 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0015, E0133, E0503, E0507, E0597. [INFO] [stderr] For more information about an error, try `rustc --explain E0015`. [INFO] [stderr] error: Could not compile `blockchain_Rust`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "7c42ca8cf8ee574787df64dec0927f66a2ef81a3e94f8be01708b9129d7aef05"` [INFO] running `"docker" "rm" "-f" "7c42ca8cf8ee574787df64dec0927f66a2ef81a3e94f8be01708b9129d7aef05"` [INFO] [stdout] 7c42ca8cf8ee574787df64dec0927f66a2ef81a3e94f8be01708b9129d7aef05