[INFO] cloning repository https://github.com/georgefst/rustlings [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/georgefst/rustlings" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeorgefst%2Frustlings", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeorgefst%2Frustlings'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9ed365979c8c36e72d005049f308d0048b141706 [INFO] checking georgefst/rustlings against try#e5b0618d996a6a3941e423fd3e170737b8dbdc92 for pr-151822 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeorgefst%2Frustlings" "/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/georgefst/rustlings [INFO] finished tweaking git repo https://github.com/georgefst/rustlings [INFO] tweaked toml for git repo https://github.com/georgefst/rustlings written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/georgefst/rustlings on toolchain e5b0618d996a6a3941e423fd3e170737b8dbdc92 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/georgefst/rustlings 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" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "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 [ERROR] error running command: no output for 300 seconds [INFO] checking georgefst/rustlings against try#e5b0618d996a6a3941e423fd3e170737b8dbdc92 for pr-151822 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgeorgefst%2Frustlings" "/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/georgefst/rustlings [INFO] finished tweaking git repo https://github.com/georgefst/rustlings [INFO] tweaked toml for git repo https://github.com/georgefst/rustlings written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/georgefst/rustlings on toolchain e5b0618d996a6a3941e423fd3e170737b8dbdc92 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/georgefst/rustlings 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" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "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] 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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] bc9748d9f1dfba98023fd434c3682a32d71ac35967937cb9b5fb4500b56d0009 [INFO] running `Command { std: "docker" "start" "-a" "bc9748d9f1dfba98023fd434c3682a32d71ac35967937cb9b5fb4500b56d0009", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "bc9748d9f1dfba98023fd434c3682a32d71ac35967937cb9b5fb4500b56d0009", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc9748d9f1dfba98023fd434c3682a32d71ac35967937cb9b5fb4500b56d0009", kill_on_drop: false }` [INFO] [stdout] bc9748d9f1dfba98023fd434c3682a32d71ac35967937cb9b5fb4500b56d0009 [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:29356a839a4d14451438f794ce8414e707d72405f44418718d724d22562fe786" "/opt/rustwide/cargo-home/bin/cargo" "+e5b0618d996a6a3941e423fd3e170737b8dbdc92" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] cb2824ffac4706afe5df8e4ee899549e0aec02bf0b1eed6e1024d4f91fabfb0b [INFO] running `Command { std: "docker" "start" "-a" "cb2824ffac4706afe5df8e4ee899549e0aec02bf0b1eed6e1024d4f91fabfb0b", kill_on_drop: false }` [INFO] [stderr] Checking exercises v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0597]: `string2` does not live long enough [INFO] [stdout] --> exercises/16_lifetimes/lifetimes2.rs:17:36 [INFO] [stdout] | [INFO] [stdout] 16 | let string2 = String::from("xyz"); [INFO] [stdout] | ------- binding `string2` declared here [INFO] [stdout] 17 | result = longest(&string1, &string2); [INFO] [stdout] | ^^^^^^^^ borrowed value does not live long enough [INFO] [stdout] 18 | } [INFO] [stdout] | - `string2` dropped here while still borrowed [INFO] [stdout] 19 | println!("The longest string is '{result}'"); [INFO] [stdout] | ------ borrow later used here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0597`. [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "lifetimes2") due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: no method named `as_ref` found for type parameter `T` in the current scope [INFO] [stdout] --> exercises/23_conversions/as_ref_mut.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 8 | fn byte_counter(arg: T) -> usize { [INFO] [stdout] | - method `as_ref` not found for this type parameter [INFO] [stdout] 9 | arg.as_ref().len() [INFO] [stdout] | ^^^^^^ method not found in `T` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the type parameter is bounded by the trait [INFO] [stdout] help: the following trait defines an item `as_ref`, perhaps you need to restrict type parameter `T` with it: [INFO] [stdout] | [INFO] [stdout] 8 | fn byte_counter>(arg: T) -> usize { [INFO] [stdout] | ++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> exercises/09_strings/strings1.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | fn current_favorite_color() -> String { [INFO] [stdout] | ------ expected `String` because of return type [INFO] [stdout] 3 | "blue" [INFO] [stdout] | ^^^^^^ expected `String`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: try using a conversion method [INFO] [stdout] | [INFO] [stdout] 3 | "blue".to_string() [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_ref` found for type parameter `T` in the current scope [INFO] [stdout] --> exercises/23_conversions/as_ref_mut.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | fn char_counter(arg: T) -> usize { [INFO] [stdout] | - method `as_ref` not found for this type parameter [INFO] [stdout] 15 | arg.as_ref().chars().count() [INFO] [stdout] | ^^^^^^ method not found in `T` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the type parameter is bounded by the trait [INFO] [stdout] help: the following trait defines an item `as_ref`, perhaps you need to restrict type parameter `T` with it: [INFO] [stdout] | [INFO] [stdout] 14 | fn char_counter>(arg: T) -> usize { [INFO] [stdout] | ++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arg` [INFO] [stdout] --> exercises/23_conversions/as_ref_mut.rs:20:14 [INFO] [stdout] | [INFO] [stdout] 20 | fn num_sq(arg: &mut T) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0599`. [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> exercises/09_strings/strings1.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 2 | fn current_favorite_color() -> String { [INFO] [stdout] | ------ expected `String` because of return type [INFO] [stdout] 3 | "blue" [INFO] [stdout] | ^^^^^^ expected `String`, found `&str` [INFO] [stdout] | [INFO] [stdout] help: try using a conversion method [INFO] [stdout] | [INFO] [stdout] 3 | "blue".to_string() [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "as_ref_mut") due to 2 previous errors; 1 warning emitted [INFO] [stderr] error: could not compile `exercises` (bin "strings1") due to 1 previous error [INFO] [stdout] For more information about this error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | placeholder("blue"); [INFO] [stdout] | ^^^^^^^^^^^ ------ unexpected argument of type `&'static str` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 16 - placeholder("blue"); [INFO] [stdout] 16 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "strings1" test) due to 1 previous error [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> exercises/06_move_semantics/move_semantics5.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | fn string_uppercase(mut data: &String) { [INFO] [stdout] | ------- expected due to this parameter type [INFO] [stdout] 13 | data = data.to_uppercase(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ expected `&String`, found `String` [INFO] [stdout] | [INFO] [stdout] help: you might have meant to mutate the pointed at value being passed in, instead of changing the reference in the local binding [INFO] [stdout] | [INFO] [stdout] 12 ~ fn string_uppercase(data: &mut String) { [INFO] [stdout] 13 ~ *data = data.to_uppercase(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0046]: not all trait items implemented, missing: `append_bar` [INFO] [stdout] --> exercises/15_traits/traits1.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 4 | fn append_bar(self) -> Self; [INFO] [stdout] | ---------------------------- `append_bar` from trait [INFO] [stdout] ... [INFO] [stdout] 7 | impl AppendBar for String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ missing `append_bar` in implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | placeholder("red".to_string()); [INFO] [stdout] | ^^^^^^^^^^^ ----------------- unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 18 - placeholder("red".to_string()); [INFO] [stdout] 18 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | placeholder(String::from("hi")); [INFO] [stdout] | ^^^^^^^^^^^ ------------------ unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 20 - placeholder(String::from("hi")); [INFO] [stdout] 20 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | placeholder("rust is fun!".to_owned()); [INFO] [stdout] | ^^^^^^^^^^^ ------------------------- unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 22 - placeholder("rust is fun!".to_owned()); [INFO] [stdout] 22 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | placeholder("nice weather".into()); [INFO] [stdout] | ^^^^^^^^^^^ --------------------- unexpected argument [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 24 - placeholder("nice weather".into()); [INFO] [stdout] 24 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | placeholder(format!("Interpolation {}", "Station")); [INFO] [stdout] | ^^^^^^^^^^^ -------------------------------------- unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 26 - placeholder(format!("Interpolation {}", "Station")); [INFO] [stdout] 26 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | placeholder(&String::from("abc")[0..1]); [INFO] [stdout] | ^^^^^^^^^^^ -------------------------- unexpected argument of type `&str` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 30 - placeholder(&String::from("abc")[0..1]); [INFO] [stdout] 30 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | placeholder(" hello there ".trim()); [INFO] [stdout] | ^^^^^^^^^^^ ----------------------- unexpected argument of type `&str` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 32 - placeholder(" hello there ".trim()); [INFO] [stdout] 32 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | placeholder("Happy Monday!".replace("Mon", "Tues")); [INFO] [stdout] | ^^^^^^^^^^^ -------------------------------------- unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 34 - placeholder("Happy Monday!".replace("Mon", "Tues")); [INFO] [stdout] 34 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 0 arguments but 1 argument was supplied [INFO] [stdout] --> exercises/09_strings/strings4.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | placeholder("mY sHiFt KeY iS sTiCkY".to_lowercase()); [INFO] [stdout] | ^^^^^^^^^^^ --------------------------------------- unexpected argument of type `String` [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> exercises/09_strings/strings4.rs:2:4 [INFO] [stdout] | [INFO] [stdout] 2 | fn placeholder() {} [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] help: remove the extra argument [INFO] [stdout] | [INFO] [stdout] 36 - placeholder("mY sHiFt KeY iS sTiCkY".to_lowercase()); [INFO] [stdout] 36 + placeholder(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `data` [INFO] [stdout] --> exercises/06_move_semantics/move_semantics5.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 19 | let data = "Rust is great!".to_string(); [INFO] [stdout] | ---- move occurs because `data` has type `String`, which does not implement the `Copy` trait [INFO] [stdout] 20 | [INFO] [stdout] 21 | get_char(data); [INFO] [stdout] | ---- value moved here [INFO] [stdout] 22 | [INFO] [stdout] 23 | string_uppercase(&data); [INFO] [stdout] | ^^^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: consider changing this parameter type in function `get_char` to borrow instead if owning the value isn't necessary [INFO] [stdout] --> exercises/06_move_semantics/move_semantics5.rs:7:19 [INFO] [stdout] | [INFO] [stdout] 7 | fn get_char(data: String) -> char { [INFO] [stdout] | -------- ^^^^^^ this parameter takes ownership of the value [INFO] [stdout] | | [INFO] [stdout] | in this function [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 21 | get_char(data.clone()); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0382. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::Command` [INFO] [stdout] --> exercises/quizzes/quiz2.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | use super::Command; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0046`. [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "strings4") due to 10 previous errors [INFO] [stderr] error: could not compile `exercises` (bin "move_semantics5") due to 2 previous errors [INFO] [stdout] error[E0425]: cannot find function `transformer` in this scope [INFO] [stdout] --> exercises/quizzes/quiz2.rs:51:22 [INFO] [stdout] | [INFO] [stdout] 51 | let output = transformer(input); [INFO] [stdout] | ^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "traits1" test) due to 1 previous error [INFO] [stdout] For more information about this error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "quiz2" test) due to 1 previous error; 1 warning emitted [INFO] [stdout] error[E0277]: the `?` operator can only be used in a function that returns `Result` or `Option` (or another type that implements `FromResidual`) [INFO] [stdout] --> exercises/13_error_handling/errors3.rs:23:46 [INFO] [stdout] | [INFO] [stdout] 18 | fn main() { [INFO] [stdout] | --------- this function should return `Result` or `Option` to accept `?` [INFO] [stdout] ... [INFO] [stdout] 23 | let cost = total_cost(pretend_user_input)?; [INFO] [stdout] | ^ cannot use the `?` operator in a function that returns `()` [INFO] [stdout] | [INFO] [stdout] help: consider adding return type [INFO] [stdout] | [INFO] [stdout] 18 | fn main() -> Result<(), Box> { [INFO] [stdout] | +++++++++++++++++++++++++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `exercises` (bin "errors3") due to 1 previous error [INFO] running `Command { std: "docker" "inspect" "cb2824ffac4706afe5df8e4ee899549e0aec02bf0b1eed6e1024d4f91fabfb0b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cb2824ffac4706afe5df8e4ee899549e0aec02bf0b1eed6e1024d4f91fabfb0b", kill_on_drop: false }` [INFO] [stdout] cb2824ffac4706afe5df8e4ee899549e0aec02bf0b1eed6e1024d4f91fabfb0b