[INFO] cloning repository https://github.com/kod-kristoff/rust-playground [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/kod-kristoff/rust-playground" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkod-kristoff%2Frust-playground", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkod-kristoff%2Frust-playground'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5bda6047e1670199cd7db8a9b0e9c10e3dc38a2b [INFO] checking kod-kristoff/rust-playground against try#da4929024a7261062885cb3209c9d7fdc919d233 for pr-135536 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkod-kristoff%2Frust-playground" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kod-kristoff/rust-playground on toolchain da4929024a7261062885cb3209c9d7fdc919d233 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da4929024a7261062885cb3209c9d7fdc919d233" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/kod-kristoff/rust-playground [INFO] finished tweaking git repo https://github.com/kod-kristoff/rust-playground [INFO] tweaked toml for git repo https://github.com/kod-kristoff/rust-playground written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/kod-kristoff/rust-playground 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" "+da4929024a7261062885cb3209c9d7fdc919d233" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ron v0.6.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+da4929024a7261062885cb3209c9d7fdc919d233" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9e1b7b18e4056a20c56ee78c3b1237612c4c467c5ff63c92675c56a8d23e06b9 [INFO] running `Command { std: "docker" "start" "-a" "9e1b7b18e4056a20c56ee78c3b1237612c4c467c5ff63c92675c56a8d23e06b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9e1b7b18e4056a20c56ee78c3b1237612c4c467c5ff63c92675c56a8d23e06b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9e1b7b18e4056a20c56ee78c3b1237612c4c467c5ff63c92675c56a8d23e06b9", kill_on_drop: false }` [INFO] [stdout] 9e1b7b18e4056a20c56ee78c3b1237612c4c467c5ff63c92675c56a8d23e06b9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:819108c5571ea2e421544af4d832f968d213c87fbe3707a016657f43d2f853bc" "/opt/rustwide/cargo-home/bin/cargo" "+da4929024a7261062885cb3209c9d7fdc919d233" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] de2d599924c720f0868164e25810df65b0030971e347ca4b59e1cc8355d84dec [INFO] running `Command { std: "docker" "start" "-a" "de2d599924c720f0868164e25810df65b0030971e347ca4b59e1cc8355d84dec", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.19 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling syn v1.0.35 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Compiling libc v0.2.74 [INFO] [stderr] Compiling pin-project-internal v0.4.23 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Checking slab v0.4.2 [INFO] [stderr] Checking itertools v0.9.0 [INFO] [stderr] Compiling proc-macro-nested v0.1.6 [INFO] [stderr] Compiling serde_derive v1.0.114 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Compiling proc-macro-hack v0.5.18 [INFO] [stderr] Checking once_cell v1.4.0 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling serde v1.0.114 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking arc-swap v0.4.7 [INFO] [stderr] Checking bytes v0.5.6 [INFO] [stderr] Checking ds-13 v0.1.0 (/opt/rustwide/workdir/ds-13) [INFO] [stderr] Checking pin-project-lite v0.1.7 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stdout] warning: unused variable: `other` [INFO] [stdout] --> ds-13/src/unsync/rb_tree.rs:577:18 [INFO] [stdout] | [INFO] [stdout] 577 | fn eq(&self, other: &Self) -> bool { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_other` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_node` is never used [INFO] [stdout] --> ds-13/src/unsync/list.rs:53:8 [INFO] [stdout] | [INFO] [stdout] 18 | impl List [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 53 | fn from_node(tail: &Rc>) -> List { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> ds-13/src/unsync/rb_tree.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 30 | impl RBTree { [INFO] [stdout] | ------------------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | fn tree(colour: Colour, value: T, left: &Self, right: &Self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | fn from_node(node: &Rc>) -> Self { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn root_colour(&self) -> Colour { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | fn ins(&self, x: T) -> Self [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | fn ins_or_rep(&self, x: T) -> Self [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | fn doubled_left(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | fn doubled_right(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | fn paint(&self, c: Colour) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `balance` is never used [INFO] [stdout] --> ds-13/src/unsync/rb_tree.rs:241:4 [INFO] [stdout] | [INFO] [stdout] 241 | fn balance(c: Colour, x: T, left: &RBTree, right: &RBTree) -> RBTree [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `left`, `right`, `doubled_left`, and `doubled_right` are never used [INFO] [stdout] --> ds-13/src/unsync/rb_tree.rs:306:8 [INFO] [stdout] | [INFO] [stdout] 304 | impl RBNode { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 305 | [INFO] [stdout] 306 | fn left(&self) -> Option<&Rc> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | fn right(&self) -> Option<&Rc> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | fn doubled_left(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | fn doubled_right(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking persi-ds v0.1.0 (/opt/rustwide/workdir/persi-ds) [INFO] [stderr] Checking statelist v0.1.0 (/opt/rustwide/workdir/statelist) [INFO] [stderr] Checking more-money v0.1.0 (/opt/rustwide/workdir/more-money) [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stdout] error[E0432]: unresolved import `ds_13::list` [INFO] [stdout] --> statelist/src/state.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ds_13::list; [INFO] [stdout] | ^^^^^^^^^^^ no `list` in the root [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these modules instead [INFO] [stdout] | [INFO] [stdout] 2 | use ds_13::sync::list; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] 2 | use ds_13::unsync::list; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `ds_13::list` [INFO] [stdout] --> statelist/src/state_list.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | use ds_13::list; [INFO] [stdout] | ^^^^^^^^^^^ no `list` in the root [INFO] [stdout] | [INFO] [stdout] help: consider importing one of these modules instead [INFO] [stdout] | [INFO] [stdout] 72 | use ds_13::sync::list; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~ [INFO] [stdout] 72 | use ds_13::unsync::list; [INFO] [stdout] | ~~~~~~~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::From` [INFO] [stdout] --> statelist/src/state.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::convert::From; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reverse` [INFO] [stdout] --> statelist/src/state.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use ds_13::unsync::list::{List, reverse}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `statelist` [INFO] [stdout] --> more-money/src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use statelist::{ [INFO] [stdout] | ^^^^^^^^^ use of undeclared crate or module `statelist` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `ds_13::list` [INFO] [stdout] --> more-money/src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | list, [INFO] [stdout] | ^^^^ no `list` in the root [INFO] [stdout] | [INFO] [stdout] = help: consider importing one of these modules instead: [INFO] [stdout] ds_13::sync::list [INFO] [stdout] ds_13::unsync::list [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reverse` [INFO] [stdout] --> more-money/src/main.rs:4:22 [INFO] [stdout] | [INFO] [stdout] 4 | list::{List, reverse} [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Pair` [INFO] [stdout] --> more-money/src/main.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pair::{Pair, make_pair}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `statelist` [INFO] [stdout] --> more-money/src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use statelist::{ [INFO] [stdout] | ^^^^^^^^^ use of undeclared crate or module `statelist` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `ds_13::list` [INFO] [stdout] --> more-money/src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | list, [INFO] [stdout] | ^^^^ no `list` in the root [INFO] [stdout] | [INFO] [stdout] = help: consider importing one of these modules instead: [INFO] [stdout] ds_13::sync::list [INFO] [stdout] ds_13::unsync::list [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `more-money` (bin "more-money") due to 2 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> statelist/src/state.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub fn make_plan(f: &dyn Fn(&State) -> (A, State)) -> Plan { [INFO] [stdout] | -------------- expected `Box<(dyn for<'a> Fn(&'a State) -> (A, State) + 'static)>` because of return type [INFO] [stdout] 17 | f [INFO] [stdout] | ^ expected `Box (A, State)>`, found `&dyn Fn(&State) -> (A, State)` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn for<'a> Fn(&'a State) -> (A, State) + 'static)>` [INFO] [stdout] found reference `&dyn for<'a> Fn(&'a State) -> (A, State)` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 17 | Box::new(f) [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> statelist/src/state.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn mreturn<'a, State: Clone, A: Copy + 'a>(a: A) -> Plan { [INFO] [stdout] | -------------- expected `Box<(dyn for<'a> Fn(&'a State) -> (A, State) + 'static)>` because of return type [INFO] [stdout] 24 | / |s: &State| { [INFO] [stdout] 25 | | (a, s.clone()) [INFO] [stdout] 26 | | } [INFO] [stdout] | |_____^ expected `Box (A, State)>`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box<(dyn for<'a> Fn(&'a State) -> (A, State) + 'static)>` [INFO] [stdout] found closure `{closure@statelist/src/state.rs:24:5: 24:16}` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 24 ~ Box::new(|s: &State| { [INFO] [stdout] 25 | (a, s.clone()) [INFO] [stdout] 26 ~ }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reverse` [INFO] [stdout] --> more-money/src/main.rs:4:22 [INFO] [stdout] | [INFO] [stdout] 4 | list::{List, reverse} [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Pair` [INFO] [stdout] --> more-money/src/main.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pair::{Pair, make_pair}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state.rs:43:32 [INFO] [stdout] | [INFO] [stdout] 43 | None => (-1, List::empty()), [INFO] [stdout] | ^^^^^ function or associated item not found in `List<_>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<_>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 43 | None => (-1, List::is_empty()), [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `State: Clone` is not satisfied in `(A, State)` [INFO] [stdout] --> statelist/src/state_list.rs:17:28 [INFO] [stdout] | [INFO] [stdout] 17 | fmap(|(a, _state)| *a, &st(s)) [INFO] [stdout] | ---- ^^^^^^ within `(A, State)`, the trait `Clone` is not implemented for `State` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: required because it appears within the type `(A, State)` [INFO] [stdout] note: required by a bound in `ds_13::unsync::list::fmap` [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:260:8 [INFO] [stdout] | [INFO] [stdout] 258 | pub fn fmap(f: impl Fn(&T) -> U, list: &List) -> List [INFO] [stdout] | ---- required by a bound in this function [INFO] [stdout] 259 | where [INFO] [stdout] 260 | T: Clone, [INFO] [stdout] | ^^^^^ required by this bound in `fmap` [INFO] [stdout] help: consider restricting type parameter `State` with trait `Clone` [INFO] [stdout] | [INFO] [stdout] 16 | pub fn eval_state_list(st: &StateList, s: &State) -> List { [INFO] [stdout] | +++++++++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:58:41 [INFO] [stdout] | [INFO] [stdout] 58 | Rc::new(move |_s: &State| PairList::empty()) [INFO] [stdout] | ^^^^^ function or associated item not found in `List<(_, _)>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<(_, _)>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 58 | Rc::new(move |_s: &State| PairList::is_empty()) [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:77:31 [INFO] [stdout] | [INFO] [stdout] 77 | None => PairList::empty(), [INFO] [stdout] | ^^^^^ function or associated item not found in `List<(_, _)>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<(_, _)>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 77 | None => PairList::is_empty(), [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:80:44 [INFO] [stdout] | [INFO] [stdout] 80 | let mut result = PairList::empty(); [INFO] [stdout] | ^^^^^ function or associated item not found in `List<(_, _)>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<(_, _)>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 80 | let mut result = PairList::is_empty(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:92:32 [INFO] [stdout] | [INFO] [stdout] 92 | let lst = List::::empty(); [INFO] [stdout] | ^^^^^ function or associated item not found in `List` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 92 | let lst = List::::is_empty(); [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0432`. [INFO] [stdout] [INFO] [stderr] error: could not compile `more-money` (bin "more-money" test) due to 2 previous errors; 2 warnings emitted [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:228:41 [INFO] [stdout] | [INFO] [stdout] 228 | PairList::, i32>::empty() [INFO] [stdout] | ^^^^^ function or associated item not found in `List<(i32, List)>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<(i32, ds_13::unsync::List)>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 228 | PairList::, i32>::is_empty() [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:233:26 [INFO] [stdout] | [INFO] [stdout] 233 | List::::empty() [INFO] [stdout] | ^^^^^ function or associated item not found in `List` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 233 | List::::is_empty() [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:245:40 [INFO] [stdout] | [INFO] [stdout] 245 | PairList::, ()>::empty() [INFO] [stdout] | ^^^^^ function or associated item not found in `List<((), List)>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<((), ds_13::unsync::List)>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 245 | PairList::, ()>::is_empty() [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no function or associated item named `empty` found for struct `ds_13::unsync::List` in the current scope [INFO] [stdout] --> statelist/src/state_list.rs:250:25 [INFO] [stdout] | [INFO] [stdout] 250 | List::<()>::empty() [INFO] [stdout] | ^^^^^ function or associated item not found in `List<()>` [INFO] [stdout] | [INFO] [stdout] note: if you're trying to build a new `ds_13::unsync::List<()>` consider using one of the following associated functions: [INFO] [stdout] ds_13::unsync::List::::new [INFO] [stdout] ds_13::unsync::List::::cons [INFO] [stdout] ds_13::unsync::List::::from_value [INFO] [stdout] --> /opt/rustwide/workdir/ds-13/src/unsync/list.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub fn new() -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn cons(element: T, tail: &List) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn from_value(element: T) -> List { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: there is a method `is_empty` with a similar name [INFO] [stdout] | [INFO] [stdout] 250 | List::<()>::is_empty() [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: lifetime may not live long enough [INFO] [stdout] --> statelist/src/state.rs:31:32 [INFO] [stdout] | [INFO] [stdout] 29 | pub fn mbind<'a, State: 'a, A: 'a, B>(pl: &'a Plan, k: impl Fn(A) -> Plan + 'a) -> Plan { [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] 30 | Box::new(move |s: &State| { [INFO] [stdout] 31 | let (a, s1) = run_plan(Box::new(pl), s); [INFO] [stdout] | ^^^^^^^^^^^^ coercion requires that `'a` must outlive `'static` [INFO] [stdout] | [INFO] [stdout] help: to declare that the trait object captures data from argument `pl`, you can add a lifetime parameter `'a` in the type alias [INFO] [stdout] | [INFO] [stdout] 5 | type Plan<'a, State, A> = Box (A, State) + 'a>; [INFO] [stdout] | +++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0432, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `statelist` (lib test) due to 15 previous errors; 2 warnings emitted [INFO] running `Command { std: "docker" "inspect" "de2d599924c720f0868164e25810df65b0030971e347ca4b59e1cc8355d84dec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "de2d599924c720f0868164e25810df65b0030971e347ca4b59e1cc8355d84dec", kill_on_drop: false }` [INFO] [stdout] de2d599924c720f0868164e25810df65b0030971e347ca4b59e1cc8355d84dec