[INFO] fetching crate af_path 0.2.3...
[INFO] testing af_path-0.2.3 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate af_path 0.2.3 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate af_path 0.2.3
[INFO] finished tweaking crates.io crate af_path 0.2.3
[INFO] tweaked toml for crates.io crate af_path 0.2.3 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate af_path 0.2.3 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 21 packages to latest compatible versions
[INFO] [stderr]       Adding iso8601 v0.4.2 (available: v0.6.3)
[INFO] [stderr]       Adding serde_yaml v0.8.26 (available: v0.9.34+deprecated)
[INFO] [stderr]       Adding syn v1.0.109 (available: v2.0.110)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded iso8601 v0.4.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1e67028110310cfc7f8574a2c4545fb011192a3f1f521fc42594538cc503a8fd
[INFO] running `Command { std: "docker" "start" "-a" "1e67028110310cfc7f8574a2c4545fb011192a3f1f521fc42594538cc503a8fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1e67028110310cfc7f8574a2c4545fb011192a3f1f521fc42594538cc503a8fd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1e67028110310cfc7f8574a2c4545fb011192a3f1f521fc42594538cc503a8fd", kill_on_drop: false }`
[INFO] [stdout] 1e67028110310cfc7f8574a2c4545fb011192a3f1f521fc42594538cc503a8fd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e5d62a7e24198e267f38f4817079ba97e122d25d3eb28df733408f23cb26571d
[INFO] running `Command { std: "docker" "start" "-a" "e5d62a7e24198e267f38f4817079ba97e122d25d3eb28df733408f23cb26571d", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling yaml-rust v0.4.5
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling iso8601 v0.4.2
[INFO] [stderr]    Compiling serde_yaml v0.8.26
[INFO] [stderr]    Compiling af_path v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/program.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout]     |         ^                                                                                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 238 -         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout] 238 +         total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 27.47s
[INFO] running `Command { std: "docker" "inspect" "e5d62a7e24198e267f38f4817079ba97e122d25d3eb28df733408f23cb26571d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e5d62a7e24198e267f38f4817079ba97e122d25d3eb28df733408f23cb26571d", kill_on_drop: false }`
[INFO] [stdout] e5d62a7e24198e267f38f4817079ba97e122d25d3eb28df733408f23cb26571d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 41573a2d380f51d32f28fa256e9655d9a5becaac31045df7fbebf05747bd3fc9
[INFO] running `Command { std: "docker" "start" "-a" "41573a2d380f51d32f28fa256e9655d9a5becaac31045df7fbebf05747bd3fc9", kill_on_drop: false }`
[INFO] [stderr]    Compiling af_path v0.2.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/program.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout]     |         ^                                                                                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 238 -         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout] 238 +         total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/program.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout]     |         ^                                                                                                  ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 238 -         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stdout] 238 +         total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.10s
[INFO] running `Command { std: "docker" "inspect" "41573a2d380f51d32f28fa256e9655d9a5becaac31045df7fbebf05747bd3fc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "41573a2d380f51d32f28fa256e9655d9a5becaac31045df7fbebf05747bd3fc9", kill_on_drop: false }`
[INFO] [stdout] 41573a2d380f51d32f28fa256e9655d9a5becaac31045df7fbebf05747bd3fc9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] de1bdea041d5b6bfd797cb0e4d21048499f635b5d8e5411c7ff342eec4134fc6
[INFO] running `Command { std: "docker" "start" "-a" "de1bdea041d5b6bfd797cb0e4d21048499f635b5d8e5411c7ff342eec4134fc6", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/program.rs:238:9
[INFO] [stderr]     |
[INFO] [stderr] 238 |         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stderr]     |         ^                                                                                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 238 -         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stderr] 238 +         total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) );
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `af_path` (lib) generated 1 warning (run `cargo fix --lib -p af_path` to apply 1 suggestion)
[INFO] [stderr] warning: `af_path` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/af_path-ae5c180b84301cf5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests af_path
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/program.rs:238:9
[INFO] [stderr]     |
[INFO] [stderr] 238 |         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stderr]     |         ^                                                                                                  ^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 238 -         (total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) ));
[INFO] [stderr] 238 +         total() | Box::new(|| select_agg()) | Box::new(|| select_one()) | Box::new(|| select_total(false)) );
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test src/base.rs - base::Parser<T> (line 71) ... FAILED
[INFO] [stdout] test src/base.rs - base::is (line 137) ... FAILED
[INFO] [stdout] test src/base.rs - base::map (line 162) ... FAILED
[INFO] [stdout] test src/base.rs - base::Parser<F> (line 44) ... FAILED
[INFO] [stdout] test src/base.rs - base::Parser<A> (line 114) ... FAILED
[INFO] [stdout] test src/base.rs - base::has_var (line 260) ... FAILED
[INFO] [stdout] test src/base.rs - base::Parser<T>::err (line 23) ... FAILED
[INFO] [stdout] test src/base.rs - base::Parser<A> (line 93) ... FAILED
[INFO] [stdout] test src/base.rs - base::one_or_more (line 200) ... FAILED
[INFO] [stdout] test src/base.rs - base::zero_or_more (line 180) ... FAILED
[INFO] [stdout] test src/base.rs - base::set_var (line 242) ... FAILED
[INFO] [stdout] test src/base.rs - base::zero_or_one (line 230) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/base.rs - base::Parser<T> (line 71) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]   --> src/base.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 | let parser = parser_a | parser_b
[INFO] [stdout]    |                                 ^ help: add `;` here
[INFO] [stdout] 73 | } _doctest_main_src_base_rs_71_0() }
[INFO] [stdout]    | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]   --> src/base.rs:72:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | let parser = parser_a | parser_b
[INFO] [stdout]    |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_b` in this scope
[INFO] [stdout]   --> src/base.rs:72:25
[INFO] [stdout]    |
[INFO] [stdout] 72 | let parser = parser_a | parser_b
[INFO] [stdout]    |                         ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::is (line 137) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:138:64
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token| token.is_lit(), |token| token.to_lit())
[INFO] [stdout]     |                                                                ^ help: add `;` here
[INFO] [stdout] 139 | } _doctest_main_src_base_rs_137_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/base.rs:138:18
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token| token.is_lit(), |token| token.to_lit())
[INFO] [stdout]     |                  ^^^^^  ----- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token: /* Type */| token.is_lit(), |token| token.to_lit())
[INFO] [stdout]     |                       ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> src/base.rs:138:42
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token| token.is_lit(), |token| token.to_lit())
[INFO] [stdout]     |                                          ^^^^^  ----- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving this closure parameter an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token| token.is_lit(), |token: /* Type */| token.to_lit())
[INFO] [stdout]     |                                               ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `is` in this scope
[INFO] [stdout]    --> src/base.rs:138:14
[INFO] [stdout]     |
[INFO] [stdout] 138 | let parser = is(|token| token.is_lit(), |token| token.to_lit())
[INFO] [stdout]     |              ^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0425.
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::map (line 162) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:164:31
[INFO] [stdout]     |
[INFO] [stdout] 164 | let parser = map(exp, ident())
[INFO] [stdout]     |                               ^ help: add `;` here
[INFO] [stdout] 165 | } _doctest_main_src_base_rs_162_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Expression`
[INFO] [stdout]    --> src/base.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 | let exp = |ident| { Expression::Ident(ident) };
[INFO] [stdout]     |                     ^^^^^^^^^^ use of undeclared type `Expression`
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `ident` in this scope
[INFO] [stdout]    --> src/base.rs:164:23
[INFO] [stdout]     |
[INFO] [stdout] 164 | let parser = map(exp, ident())
[INFO] [stdout]     |                       ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `map` in this scope
[INFO] [stdout]    --> src/base.rs:164:14
[INFO] [stdout]     |
[INFO] [stdout] 164 | let parser = map(exp, ident())
[INFO] [stdout]     |              ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::Parser<F> (line 44) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]   --> src/base.rs:45:33
[INFO] [stdout]    |
[INFO] [stdout] 45 | let parser = parser_a + parser_b
[INFO] [stdout]    |                                 ^ help: add `;` here
[INFO] [stdout] 46 | } _doctest_main_src_base_rs_44_0() }
[INFO] [stdout]    | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]   --> src/base.rs:45:14
[INFO] [stdout]    |
[INFO] [stdout] 45 | let parser = parser_a + parser_b
[INFO] [stdout]    |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_b` in this scope
[INFO] [stdout]   --> src/base.rs:45:25
[INFO] [stdout]    |
[INFO] [stdout] 45 | let parser = parser_a + parser_b
[INFO] [stdout]    |                         ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::Parser<A> (line 114) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:115:34
[INFO] [stdout]     |
[INFO] [stdout] 115 | let parser = parser_a << parser_b
[INFO] [stdout]     |                                  ^ help: add `;` here
[INFO] [stdout] 116 | } _doctest_main_src_base_rs_114_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:115:14
[INFO] [stdout]     |
[INFO] [stdout] 115 | let parser = parser_a << parser_b
[INFO] [stdout]     |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_b` in this scope
[INFO] [stdout]    --> src/base.rs:115:26
[INFO] [stdout]     |
[INFO] [stdout] 115 | let parser = parser_a << parser_b
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::has_var (line 260) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:261:31
[INFO] [stdout]     |
[INFO] [stdout] 261 | let parser = has_var(parser_a)
[INFO] [stdout]     |                               ^ help: add `;` here
[INFO] [stdout] 262 | } _doctest_main_src_base_rs_260_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:261:22
[INFO] [stdout]     |
[INFO] [stdout] 261 | let parser = has_var(parser_a)
[INFO] [stdout]     |                      ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `has_var` in this scope
[INFO] [stdout]    --> src/base.rs:261:14
[INFO] [stdout]     |
[INFO] [stdout] 261 | let parser = has_var(parser_a)
[INFO] [stdout]     |              ^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::Parser<T>::err (line 23) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]   --> src/base.rs:24:34
[INFO] [stdout]    |
[INFO] [stdout] 24 | let parser = parser_a.err("必须有值")
[INFO] [stdout]    |                                      ^ help: add `;` here
[INFO] [stdout] 25 | } _doctest_main_src_base_rs_23_0() }
[INFO] [stdout]    | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]   --> src/base.rs:24:14
[INFO] [stdout]    |
[INFO] [stdout] 24 | let parser = parser_a.err("必须有值")
[INFO] [stdout]    |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::Parser<A> (line 93) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]   --> src/base.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 | let parser = parser_a >> parser_b
[INFO] [stdout]    |                                  ^ help: add `;` here
[INFO] [stdout] 95 | } _doctest_main_src_base_rs_93_0() }
[INFO] [stdout]    | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]   --> src/base.rs:94:14
[INFO] [stdout]    |
[INFO] [stdout] 94 | let parser = parser_a >> parser_b
[INFO] [stdout]    |              ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_b` in this scope
[INFO] [stdout]   --> src/base.rs:94:26
[INFO] [stdout]    |
[INFO] [stdout] 94 | let parser = parser_a >> parser_b
[INFO] [stdout]    |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::one_or_more (line 200) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:201:35
[INFO] [stdout]     |
[INFO] [stdout] 201 | let parser = one_or_more(parser_a)
[INFO] [stdout]     |                                   ^ help: add `;` here
[INFO] [stdout] 202 | } _doctest_main_src_base_rs_200_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:201:26
[INFO] [stdout]     |
[INFO] [stdout] 201 | let parser = one_or_more(parser_a)
[INFO] [stdout]     |                          ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `one_or_more` in this scope
[INFO] [stdout]    --> src/base.rs:201:14
[INFO] [stdout]     |
[INFO] [stdout] 201 | let parser = one_or_more(parser_a)
[INFO] [stdout]     |              ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::zero_or_more (line 180) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:181:33
[INFO] [stdout]     |
[INFO] [stdout] 181 | let exp = zero_or_more(parser_a)
[INFO] [stdout]     |                                 ^ help: add `;` here
[INFO] [stdout] 182 | } _doctest_main_src_base_rs_180_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:181:24
[INFO] [stdout]     |
[INFO] [stdout] 181 | let exp = zero_or_more(parser_a)
[INFO] [stdout]     |                        ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `zero_or_more` in this scope
[INFO] [stdout]    --> src/base.rs:181:11
[INFO] [stdout]     |
[INFO] [stdout] 181 | let exp = zero_or_more(parser_a)
[INFO] [stdout]     |           ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::set_var (line 242) stdout ----
[INFO] [stdout] error: expected `;`, found `}`
[INFO] [stdout]    --> src/base.rs:243:31
[INFO] [stdout]     |
[INFO] [stdout] 243 | let parser = set_var(parser_a)
[INFO] [stdout]     |                               ^ help: add `;` here
[INFO] [stdout] 244 | } _doctest_main_src_base_rs_242_0() }
[INFO] [stdout]     | - unexpected token
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `set_var` in this scope
[INFO] [stdout]    --> src/base.rs:243:14
[INFO] [stdout]     |
[INFO] [stdout] 243 | let parser = set_var(parser_a)
[INFO] [stdout]     |              ^^^^^^^ not found in this scope
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing this function
[INFO] [stdout]     |
[INFO] [stdout] 242 + use std::env::set_var;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:243:22
[INFO] [stdout]     |
[INFO] [stdout] 243 | let parser = set_var(parser_a)
[INFO] [stdout]     |                      ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/base.rs - base::zero_or_one (line 230) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `parser_a` in this scope
[INFO] [stdout]    --> src/base.rs:231:21
[INFO] [stdout]     |
[INFO] [stdout] 231 | let a = zero_or_one(parser_a);
[INFO] [stdout]     |                     ^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `zero_or_one` in this scope
[INFO] [stdout]    --> src/base.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 | let a = zero_or_one(parser_a);
[INFO] [stdout]     |         ^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/base.rs - base::Parser<A> (line 114)
[INFO] [stdout]     src/base.rs - base::Parser<A> (line 93)
[INFO] [stdout]     src/base.rs - base::Parser<F> (line 44)
[INFO] [stdout]     src/base.rs - base::Parser<T> (line 71)
[INFO] [stdout]     src/base.rs - base::Parser<T>::err (line 23)
[INFO] [stdout]     src/base.rs - base::has_var (line 260)
[INFO] [stdout]     src/base.rs - base::is (line 137)
[INFO] [stdout]     src/base.rs - base::map (line 162)
[INFO] [stdout]     src/base.rs - base::one_or_more (line 200)
[INFO] [stdout]     src/base.rs - base::set_var (line 242)
[INFO] [stdout]     src/base.rs - base::zero_or_more (line 180)
[INFO] [stdout]     src/base.rs - base::zero_or_one (line 230)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 12 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.73s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "de1bdea041d5b6bfd797cb0e4d21048499f635b5d8e5411c7ff342eec4134fc6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "de1bdea041d5b6bfd797cb0e4d21048499f635b5d8e5411c7ff342eec4134fc6", kill_on_drop: false }`
[INFO] [stdout] de1bdea041d5b6bfd797cb0e4d21048499f635b5d8e5411c7ff342eec4134fc6
