[INFO] cloning repository https://github.com/mvespin1/BramarProgramingLanguage
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mvespin1/BramarProgramingLanguage" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvespin1%2FBramarProgramingLanguage", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvespin1%2FBramarProgramingLanguage'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 251ade914ce3c33e4b3fa1fc7ae0cf05477c3dec
[INFO] checking mvespin1/BramarProgramingLanguage against try#8e819ff5434466e9a823e03871a1775ac7d84ddf for pr-156027
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmvespin1%2FBramarProgramingLanguage" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/mvespin1/BramarProgramingLanguage
[INFO] finished tweaking git repo https://github.com/mvespin1/BramarProgramingLanguage
[INFO] tweaked toml for git repo https://github.com/mvespin1/BramarProgramingLanguage written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/mvespin1/BramarProgramingLanguage on toolchain 8e819ff5434466e9a823e03871a1775ac7d84ddf
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/mvespin1/BramarProgramingLanguage 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" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "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]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cc v1.0.99
[INFO] [stderr]   Downloaded stdext v0.3.3
[INFO] [stderr]   Downloaded loaned v0.1.2
[INFO] [stderr]   Downloaded clap_lex v0.7.1
[INFO] [stderr]   Downloaded TSPL v0.0.13
[INFO] [stderr]   Downloaded highlight_error v0.1.1
[INFO] [stderr]   Downloaded interner v0.2.1
[INFO] [stderr]   Downloaded insta v1.39.0
[INFO] [stderr]   Downloaded clap_derive v4.5.5
[INFO] [stderr]   Downloaded proc-macro2 v1.0.85
[INFO] [stderr]   Downloaded clap v4.5.7
[INFO] [stderr]   Downloaded clap_builder v4.5.7
[INFO] [stderr]   Downloaded hvm v2.0.22
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c2128c55281909872cf972af59bfed40b047c5c3fa60fefd4fd4c9a5cd4c592a
[INFO] running `Command { std: "docker" "start" "-a" "c2128c55281909872cf972af59bfed40b047c5c3fa60fefd4fd4c9a5cd4c592a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c2128c55281909872cf972af59bfed40b047c5c3fa60fefd4fd4c9a5cd4c592a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c2128c55281909872cf972af59bfed40b047c5c3fa60fefd4fd4c9a5cd4c592a", kill_on_drop: false }`
[INFO] [stdout] c2128c55281909872cf972af59bfed40b047c5c3fa60fefd4fd4c9a5cd4c592a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+8e819ff5434466e9a823e03871a1775ac7d84ddf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c04d1868ae03a9e273e6fa0357850a9dda38f7893173bc407d218552fcf6c5a
[INFO] running `Command { std: "docker" "start" "-a" "2c04d1868ae03a9e273e6fa0357850a9dda38f7893173bc407d218552fcf6c5a", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.155
[INFO] [stderr]    Compiling cc v1.0.99
[INFO] [stderr]    Compiling proc-macro2 v1.0.85
[INFO] [stderr]     Checking colorchoice v1.0.1
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.0
[INFO] [stderr]     Checking anstyle-query v1.1.0
[INFO] [stderr]     Checking anstyle v1.0.7
[INFO] [stderr]     Checking clap_lex v0.7.1
[INFO] [stderr]     Checking highlight_error v0.1.1
[INFO] [stderr]     Checking either v1.12.0
[INFO] [stderr]     Checking anstyle-parse v0.2.4
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking loaned v0.1.2
[INFO] [stderr]     Checking interner v0.2.1
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking similar v2.5.0
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking stdext v0.3.3
[INFO] [stderr]     Checking TSPL v0.0.13
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking anstream v0.6.14
[INFO] [stderr]     Checking itertools v0.11.0
[INFO] [stderr]     Checking clap_builder v4.5.7
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking indexmap v2.2.6
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking insta v1.39.0
[INFO] [stderr]    Compiling syn v2.0.66
[INFO] [stderr]    Compiling psm v0.1.21
[INFO] [stderr]    Compiling hvm v2.0.22
[INFO] [stderr]    Compiling stacker v0.1.15
[INFO] [stderr]    Compiling clap_derive v4.5.5
[INFO] [stderr]     Checking clap v4.5.7
[INFO] [stderr]     Checking bramar-lang v0.2.37 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0271]: expected `IntoIter<(&mut Term, BindsIter<..., ..., ..., ..., ..., ..., _>), 2>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-14319516643426674542.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Chain<IntoIter<(&mut Term, ...), 1>, ...>, ...>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-279739133761673934.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Chain<Chain<IntoIter<(&mut Term, ...), 1>, ...>, ...>, ...>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-11075740773505697242.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<&mut Term, 0>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-7909409806567701562.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<&mut Term, 1>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-7909409806567701562.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Map<IterMut<'_, Term>, {closure@mod.rs:756:46}>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-7909409806567701562.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-13857216693252191374.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `{closure@mod.rs:756:46}` to return `&mut Term`, but it returns `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, _>)`
[INFO] [stdout]    --> src/fun/mod.rs:756:51
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ---------------------------------------------------------------------------------------------------- closure used here
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 756 | |         ChildrenIter::Vec(els.iter_mut().map(|el| (el, BindsIter::Zero([]))))
[INFO] [stdout]     | |                                              ---- ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout]     | |                                              |
[INFO] [stdout]     | |                                              this closure
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, _>)`
[INFO] [stdout]     = note: required for `Map<std::slice::IterMut<'_, Term>, {closure@src/fun/mod.rs:756:46: 756:50}>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-11706583265195028566.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `{closure@mod.rs:748:47}` to return `&mut Term`, but it returns `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>)`
[INFO] [stdout]    --> src/fun/mod.rs:748:51
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ---------------------------------------------------------------------------------------------------- closure used here
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |         ChildrenIter::Bend(arg.iter_mut().map(|x| (x, BindsIter::Zero([]))).chain([
[INFO] [stdout]     | |                                               --- ^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout]     | |                                               |
[INFO] [stdout]     | |                                               this closure
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, std::slice::Iter<'_, Option<Name>>>)`
[INFO] [stdout]     = note: required for `Map<std::slice::IterMut<'_, Term>, {closure@src/fun/mod.rs:748:47: 748:50}>` to implement `Iterator`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-13857216693252191374.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>), 3>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, std::slice::Iter<'_, Option<Name>>>)`
[INFO] [stdout]     = note: required for `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-56e019ae203a2c92.long-type-13857216693252191374.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<(&mut Term, BindsIter<..., ..., ..., ..., ..., ..., _>), 2>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-9027535555693487448.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Chain<IntoIter<(&mut Term, ...), 1>, ...>, ...>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-8275353844328753454.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Chain<Chain<IntoIter<(&mut Term, ...), 1>, ...>, ...>, ...>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the found opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-14225699868629465717.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<&mut Term, 0>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-2249527173979318483.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<&mut Term, 1>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-2249527173979318483.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Map<IterMut<'_, Term>, {closure@mod.rs:756:46}>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-2249527173979318483.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to be an iterator that yields `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`, but it yields `&mut Term`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `(&mut Term, ...)`, found `&mut Term`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout] ...
[INFO] [stdout] 994 |     pub fn binds(&self) -> impl DoubleEndedIterator<Item = &Option<Name>> + Clone {
[INFO] [stdout]     |                            ------------------------------------------------------ the expected opaque type
[INFO] [stdout]     |
[INFO] [stdout]     = note:          expected tuple `(&mut Term, BindsIter<IntoIter<&..., 0>, ..., ..., ..., ..., ..., _>)`
[INFO] [stdout]             found mutable reference `&mut Term`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `Iterator`
[INFO] [stdout]    --> src/utils.rs:21:48
[INFO] [stdout]     |
[INFO] [stdout]  21 |     impl<T, $($Variant: Iterator<Item = T>),*> Iterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                  --------      ^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-15709354468117884565.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `{closure@mod.rs:756:46}` to return `&mut Term`, but it returns `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, _>)`
[INFO] [stdout]    --> src/fun/mod.rs:756:51
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ---------------------------------------------------------------------------------------------------- closure used here
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 756 | |         ChildrenIter::Vec(els.iter_mut().map(|el| (el, BindsIter::Zero([]))))
[INFO] [stdout]     | |                                              ---- ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout]     | |                                              |
[INFO] [stdout]     | |                                              this closure
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, _>)`
[INFO] [stdout]     = note: required for `Map<std::slice::IterMut<'_, Term>, {closure@src/fun/mod.rs:756:46: 756:50}>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-12187460026211938817.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `{closure@mod.rs:748:47}` to return `&mut Term`, but it returns `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>)`
[INFO] [stdout]    --> src/fun/mod.rs:748:51
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ---------------------------------------------------------------------------------------------------- closure used here
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 748 | |         ChildrenIter::Bend(arg.iter_mut().map(|x| (x, BindsIter::Zero([]))).chain([
[INFO] [stdout]     | |                                               --- ^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout]     | |                                               |
[INFO] [stdout]     | |                                               this closure
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, std::slice::Iter<'_, Option<Name>>>)`
[INFO] [stdout]     = note: required for `Map<std::slice::IterMut<'_, Term>, {closure@src/fun/mod.rs:748:47: 748:50}>` to implement `Iterator`
[INFO] [stdout]     = note: 1 redundant requirement hidden
[INFO] [stdout]     = note: required for `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-15709354468117884565.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: expected `IntoIter<(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>), 3>` to be an iterator that yields `&mut Term`, but it yields `(&mut Term, BindsIter<IntoIter<_, 0>, _, _, _, _, _, Iter<'_, Option<Name>>>)`
[INFO] [stdout]    --> src/fun/mod.rs:721:8
[INFO] [stdout]     |
[INFO] [stdout] 721 |     ) -> impl DoubleEndedIterator<Item = (&mut Term, impl DoubleEndedIterator<Item = &Option<Name>> + Clone)>
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut Term`, found `(&mut Term, ...)`
[INFO] [stdout] ...
[INFO] [stdout] 725 | /     match self {
[INFO] [stdout] 726 | |       Term::Mat { arg, bnd, with_bnd, with_arg, arms }
[INFO] [stdout] 727 | |       | Term::Fold { bnd, arg, with_bnd, with_arg, arms } => {
[INFO] [stdout] 728 | |         let arg = [(arg.as_mut(), BindsIter::Zero([]))].into_iter();
[INFO] [stdout] ...   |
[INFO] [stdout] 778 | |       Term::Open { .. } => unreachable!("Open should be removed in earlier pass"),
[INFO] [stdout] 779 | |     }
[INFO] [stdout]     | |_____- return type was inferred to be `ChildrenIter<IntoIter<_, 0>, ..., ..., ..., ..., ..., ...>` here
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut Term`
[INFO] [stdout]                            found tuple `(&mut Term, Term::children_mut_with_binds::BindsIter<std::array::IntoIter<_, 0>, _, _, _, _, _, std::slice::Iter<'_, Option<Name>>>)`
[INFO] [stdout]     = note: required for `Chain<Map<IterMut<'_, Term>, {closure@...}>, ...>` to implement `Iterator`
[INFO] [stdout] note: required for `ChildrenIter<IntoIter<&mut Term, 0>, ..., ..., ..., ..., ..., ...>` to implement `DoubleEndedIterator`
[INFO] [stdout]    --> src/utils.rs:32:59
[INFO] [stdout]     |
[INFO] [stdout]  32 |     impl<T, $($Variant: DoubleEndedIterator<Item = T>),*> DoubleEndedIterator for $Iter<$($Variant),*> {
[INFO] [stdout]     |                                             --------      ^^^^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             unsatisfied trait bound introduced here
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/fun/mod.rs:723:5
[INFO] [stdout]     |
[INFO] [stdout] 723 |     multi_iterator!(ChildrenIter { Zero, One, Two, Vec, Mat, Swt, Bend });
[INFO] [stdout]     |     --------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/bramar-1b781f2373434c2c.long-type-15709354468117884565.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout]     = note: this error originates in the macro `multi_iterator` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pat`
[INFO] [stdout]    --> src/fun/mod.rs:635:19
[INFO] [stdout]     |
[INFO] [stdout] 635 |       Term::Lam { pat, bod, .. } => ChildrenIter::One([bod.as_mut()]),
[INFO] [stdout]     |                   ^^^ help: try ignoring the field: `pat: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pat`
[INFO] [stdout]    --> src/fun/mod.rs:635:19
[INFO] [stdout]     |
[INFO] [stdout] 635 |       Term::Lam { pat, bod, .. } => ChildrenIter::One([bod.as_mut()]),
[INFO] [stdout]     |                   ^^^ help: try ignoring the field: `pat: _`
[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 E0271`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0271`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bramar-lang` (lib) due to 10 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `bramar-lang` (lib test) due to 10 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "2c04d1868ae03a9e273e6fa0357850a9dda38f7893173bc407d218552fcf6c5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c04d1868ae03a9e273e6fa0357850a9dda38f7893173bc407d218552fcf6c5a", kill_on_drop: false }`
[INFO] [stdout] 2c04d1868ae03a9e273e6fa0357850a9dda38f7893173bc407d218552fcf6c5a
