[INFO] cloning repository https://github.com/chainethanblocksmith45/zksync-crypto
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chainethanblocksmith45/zksync-crypto" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchainethanblocksmith45%2Fzksync-crypto", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchainethanblocksmith45%2Fzksync-crypto'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2beee7f53c8c033f737603e05a3fae2d1a31b45a
[INFO] checking chainethanblocksmith45/zksync-crypto against try#9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840 for pr-149518
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchainethanblocksmith45%2Fzksync-crypto" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain
[INFO] started tweaking git repo https://github.com/chainethanblocksmith45/zksync-crypto
[INFO] finished tweaking git repo https://github.com/chainethanblocksmith45/zksync-crypto
[INFO] tweaked toml for git repo https://github.com/chainethanblocksmith45/zksync-crypto written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/chainethanblocksmith45/zksync-crypto on toolchain 9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/chainethanblocksmith45/zksync-crypto 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" "+9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/shamatar/poseidon_hash`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded typemap_rev v0.3.0
[INFO] [stderr]   Downloaded keccak v0.1.5
[INFO] [stderr]   Downloaded block-padding v0.2.1
[INFO] [stderr]   Downloaded num-derive v0.2.5
[INFO] [stderr]   Downloaded firestorm v0.5.1
[INFO] [stderr]   Downloaded splitmut v0.2.1
[INFO] [stderr]   Downloaded arr_macro_impl v0.1.3
[INFO] [stderr]   Downloaded approx v0.3.2
[INFO] [stderr]   Downloaded nodrop v0.1.14
[INFO] [stderr]   Downloaded addchain v0.2.0
[INFO] [stderr]   Downloaded crypto-mac v0.8.0
[INFO] [stderr]   Downloaded crossbeam-queue v0.3.12
[INFO] [stderr]   Downloaded tiny-keccak v1.5.0
[INFO] [stderr]   Downloaded arr_macro v0.1.3
[INFO] [stderr]   Downloaded ciborium-ll v0.2.2
[INFO] [stderr]   Downloaded anes v0.1.6
[INFO] [stderr]   Downloaded errno v0.3.11
[INFO] [stderr]   Downloaded pest_generator v2.8.0
[INFO] [stderr]   Downloaded pest_meta v2.8.0
[INFO] [stderr]   Downloaded getrandom v0.3.2
[INFO] [stderr]   Downloaded r-efi v5.2.0
[INFO] [stderr]   Downloaded const_format v0.2.34
[INFO] [stderr]   Downloaded criterion v0.4.0
[INFO] [stderr]   Downloaded libm v0.2.11
[INFO] [stderr]   Downloaded pest v2.8.0
[INFO] [stderr]   Downloaded num-bigint v0.3.3
[INFO] [stderr]   Downloaded winnow v0.7.6
[INFO] [stderr]   Downloaded syn v0.15.44
[INFO] [stderr]   Downloaded syn v2.0.100
[INFO] [stderr]   Downloaded clap v3.2.25
[INFO] [stderr]   Downloaded serde_json v1.0.140
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.24
[INFO] [stderr]   Downloaded zerocopy v0.8.24
[INFO] [stderr]   Downloaded num-bigint v0.2.6
[INFO] [stderr]   Downloaded indexmap v2.9.0
[INFO] [stderr]   Downloaded parity-scale-codec v3.7.4
[INFO] [stderr]   Downloaded futures v0.3.31
[INFO] [stderr]   Downloaded alga v0.9.3
[INFO] [stderr]   Downloaded rustix v1.0.5
[INFO] [stderr]   Downloaded rand v0.4.6
[INFO] [stderr]   Downloaded bitflags v2.9.0
[INFO] [stderr]   Downloaded thiserror-impl v2.0.12
[INFO] [stderr]   Downloaded handlebars v3.5.5
[INFO] [stderr]   Downloaded ciborium v0.2.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.95
[INFO] [stderr]   Downloaded sha3 v0.9.1
[INFO] [stderr]   Downloaded pairing_ce v0.24.2
[INFO] [stderr]   Downloaded tempfile v3.19.1
[INFO] [stderr]   Downloaded ucd-trie v0.1.7
[INFO] [stderr]   Downloaded pest_derive v2.8.0
[INFO] [stderr]   Downloaded textwrap v0.16.2
[INFO] [stderr]   Downloaded mathru v0.6.10
[INFO] [stderr]   Downloaded blake2s_simd v0.5.11
[INFO] [stderr]   Downloaded blake2 v0.9.2
[INFO] [stderr]   Downloaded blake2-rfc_bellman_edition v0.0.1
[INFO] [stderr]   Downloaded libc v0.2.172
[INFO] [stderr]   Downloaded rand_core v0.4.2
[INFO] [stderr]   Downloaded num-modular v0.5.1
[INFO] [stderr]   Downloaded num-complex v0.2.4
[INFO] [stderr]   Downloaded ff_derive_ce v0.9.3
[INFO] [stderr]   Downloaded smallvec v1.15.0
[INFO] [stderr]   Downloaded zeroize v1.8.1
[INFO] [stderr]   Downloaded thiserror v2.0.12
[INFO] [stderr]   Downloaded sha3_ce v0.10.6
[INFO] [stderr]   Downloaded os_str_bytes v6.6.1
[INFO] [stderr]   Downloaded criterion-plot v0.5.0
[INFO] [stderr]   Downloaded const_format_proc_macros v0.2.34
[INFO] [stderr]   Downloaded impl-trait-for-tuples v0.2.3
[INFO] [stderr]   Downloaded unroll v0.1.5
[INFO] [stderr]   Downloaded quote v0.6.13
[INFO] [stderr]   Downloaded blake2-rfc v0.2.18
[INFO] [stderr]   Downloaded arrayvec v0.5.2
[INFO] [stderr]   Downloaded rustversion v1.0.20
[INFO] [stderr]   Downloaded futures-executor v0.3.31
[INFO] [stderr]   Downloaded arrayvec v0.4.12
[INFO] [stderr]   Downloaded ciborium-io v0.2.2
[INFO] [stderr]   Downloaded parity-scale-codec-derive v3.7.4
[INFO] [stderr]   Downloaded primitive-types v0.12.2
[INFO] [stderr]   Downloaded prefetch v0.2.0
[INFO] [stderr]   Downloaded ff_ce v0.12.0
[INFO] [stderr]   Downloaded byte-slice-cast v1.2.3
[INFO] [stderr]   Downloaded num-iter v0.1.45
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 99bc03f285d434ec123b9548a3485db1677973671d3635d9b2aaaf3687af4850
[INFO] running `Command { std: "docker" "start" "-a" "99bc03f285d434ec123b9548a3485db1677973671d3635d9b2aaaf3687af4850", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "99bc03f285d434ec123b9548a3485db1677973671d3635d9b2aaaf3687af4850", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "99bc03f285d434ec123b9548a3485db1677973671d3635d9b2aaaf3687af4850", kill_on_drop: false }`
[INFO] [stdout] 99bc03f285d434ec123b9548a3485db1677973671d3635d9b2aaaf3687af4850
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1b0bc8b3443ad4e2cbf54f45d0b04720b7e062070741c2c78cdc6e6f8ba6ecaf
[INFO] running `Command { std: "docker" "start" "-a" "1b0bc8b3443ad4e2cbf54f45d0b04720b7e062070741c2c78cdc6e6f8ba6ecaf", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling libm v0.2.11
[INFO] [stderr]    Compiling zerocopy v0.8.24
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crunchy v0.2.3
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking rustc-hex v2.1.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking constant_time_eq v0.1.5
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]     Checking keccak v0.1.5
[INFO] [stderr]     Checking tiny-keccak v1.5.0
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]     Checking rlp v0.5.2
[INFO] [stderr]    Compiling proc-macro-hack v0.5.20+deprecated
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking impl-rlp v0.3.0
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]     Checking blake2s_simd v0.5.11
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking sha3_ce v0.10.6
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking firestorm v0.5.1
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]     Checking block-padding v0.2.1
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking nodrop v0.1.14
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling num-derive v0.2.5
[INFO] [stderr]     Checking crypto-mac v0.8.0
[INFO] [stderr]     Checking blake2 v0.9.2
[INFO] [stderr]     Checking sha3 v0.9.1
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]     Checking blake2-rfc_bellman_edition v0.0.1
[INFO] [stderr]     Checking splitmut v0.2.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling num-bigint v0.3.3
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking num-modular v0.5.1
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking typemap_rev v0.3.0
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking const_format v0.2.34
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking generic-array v0.12.4
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking byte-tools v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking block-padding v0.1.5
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking block-buffer v0.7.3
[INFO] [stderr]     Checking digest v0.8.1
[INFO] [stderr]     Checking fixed-hash v0.8.0
[INFO] [stderr]     Checking approx v0.3.2
[INFO] [stderr]     Checking csv-core v0.1.12
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking half v1.8.3
[INFO] [stderr]     Checking fake-simd v0.1.2
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]     Checking addchain v0.2.0
[INFO] [stderr]     Checking opaque-debug v0.2.3
[INFO] [stderr]     Checking sha2 v0.8.2
[INFO] [stderr]     Checking criterion-plot v0.4.5
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking alga v0.9.3
[INFO] [stderr]     Checking os_str_bytes v6.6.1
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking terminal_size v0.1.17
[INFO] [stderr]     Checking clap_lex v0.2.4
[INFO] [stderr]     Checking textwrap v0.16.2
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]    Compiling heck v0.3.3
[INFO] [stderr]     Checking clap v3.2.25
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]    Compiling hex-literal v0.3.4
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking console v0.14.1
[INFO] [stderr]     Checking pest v2.8.0
[INFO] [stderr]     Checking tempfile v3.19.1
[INFO] [stderr]     Checking dialoguer v0.8.0
[INFO] [stderr]    Compiling unroll v0.1.5
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling zksync_cs_derive v0.32.6 (/opt/rustwide/workdir/crates/cs_derive)
[INFO] [stderr]    Compiling arr_macro_impl v0.1.3
[INFO] [stderr]    Compiling ff_derive_ce v0.9.3
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]     Checking arr_macro v0.1.3
[INFO] [stderr]     Checking structopt v0.3.26
[INFO] [stderr]     Checking ff_ce v0.12.0
[INFO] [stderr]    Compiling pest_meta v2.8.0
[INFO] [stderr]     Checking pairing_ce v0.24.2
[INFO] [stderr]    Compiling pest_generator v2.8.0
[INFO] [stderr]    Compiling pest_derive v2.8.0
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]     Checking impl-serde v0.4.0
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking mathru v0.6.10
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking primitive-types v0.12.2
[INFO] [stderr]     Checking ethbloom v0.13.0
[INFO] [stderr]     Checking zksync_ff_derive v0.32.6 (/opt/rustwide/workdir/crates/ff_derive)
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking handlebars v3.5.5
[INFO] [stderr]     Checking ethereum-types v0.14.1
[INFO] [stderr]     Checking poseidon_hash v0.0.1 (https://github.com/shamatar/poseidon_hash#495ae87f)
[INFO] [stderr]     Checking criterion v0.3.6
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]     Checking zksync_ff v0.32.6 (/opt/rustwide/workdir/crates/ff)
[INFO] [stderr]     Checking zksync_pairing v0.32.6 (/opt/rustwide/workdir/crates/pairing)
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Field` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeField` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeField` in the macro namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeFieldDecodingError` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:54
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeFieldRepr` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:54
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:70
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ScalarEngine` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:70
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:84
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                                    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `SqrtField` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:84
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `Field` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:10
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeField` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeField` in the macro namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeFieldDecodingError` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:29
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:54
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `PrimeFieldRepr` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:54
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:70
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ScalarEngine` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:70
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:84
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                                    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `SqrtField` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/pairing/src/lib.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use ff::*;
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/pairing/src/lib.rs:27:84
[INFO] [stdout]    |
[INFO] [stdout] 27 | use ff::{Field, PrimeField, PrimeFieldDecodingError, PrimeFieldRepr, ScalarEngine, SqrtField};
[INFO] [stdout]    |                                                                                    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]     --> crates/pairing/src/bn256/ec.rs:1417:17
[INFO] [stdout]      |
[INFO] [stdout] 1417 |             let y2 = other.y;
[INFO] [stdout]      |                 ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `scale_by_cofactor` is never used
[INFO] [stdout]    --> crates/pairing/src/bls12_381/ec.rs:970:12
[INFO] [stdout]     |
[INFO] [stdout] 969 |     impl G1Affine {
[INFO] [stdout]     |     ------------- method in this implementation
[INFO] [stdout] 970 |         fn scale_by_cofactor(&self) -> G1 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking zksync_bellman v0.32.6 (/opt/rustwide/workdir/crates/bellman)
[INFO] [stderr]     Checking boojum v0.32.6 (/opt/rustwide/workdir/crates/boojum)
[INFO] [stdout] warning: unused variable: `y2`
[INFO] [stdout]     --> crates/pairing/src/bn256/ec.rs:1417:17
[INFO] [stdout]      |
[INFO] [stdout] 1417 |             let y2 = other.y;
[INFO] [stdout]      |                 ^^ help: if this is intentional, prefix it with an underscore: `_y2`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/bellman/src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::pairing::ff;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ff` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/bellman/src/lib.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use pairing::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/bellman/src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::pairing::ff;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]  --> crates/bellman/src/log.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[allow(clippy::needless_borrow)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `cfg_if`
[INFO] [stdout]  --> crates/bellman/src/log.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | cfg_if! {
[INFO] [stdout]   | ^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]  --> crates/bellman/src/plonk/fft/mod.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[cfg(feature = "nightly")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]   = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[cfg(feature = "nightly")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[cfg(feature = "nightly")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 |     if #[cfg(feature = "nightly")] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]  --> crates/bellman/src/plonk/commitments/transparent/iop/blake2s_trivial_iop.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout]   |                      ^^                                                                                         ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]   |
[INFO] [stdout] 9 -     static ref BASE_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout] 9 +     static ref BASE_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]  --> crates/bellman/src/plonk/commitments/transcript/prng.rs:6:55
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() };
[INFO] [stdout]   |                      ^^                                                                                          ^^
[INFO] [stdout]   |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]   |
[INFO] [stdout] 6 -     static ref STATELESS_PRNG_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() };
[INFO] [stdout] 6 +     static ref STATELESS_PRNG_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> crates/bellman/src/plonk/commitments/transcript/mod.rs:13:51
[INFO] [stdout]    |
[INFO] [stdout] 13 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout]    |                      ^^                                                                                         ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 13 -     static ref TRANSCRIPT_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout] 13 +     static ref TRANSCRIPT_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: private item shadows public glob re-export
[INFO] [stdout]   --> crates/bellman/src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::pairing::ff;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the name `ff` in the type namespace is supposed to be publicly re-exported here
[INFO] [stdout]   --> crates/bellman/src/lib.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use pairing::*;
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] note: but the private item here shadows it
[INFO] [stdout]   --> crates/bellman/src/lib.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::pairing::ff;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(hidden_glob_reexports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute `allow`
[INFO] [stdout]  --> crates/bellman/src/log.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[allow(clippy::needless_borrow)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the built-in attribute `allow` will be ignored, since it's applied to the macro invocation `cfg_if`
[INFO] [stdout]  --> crates/bellman/src/log.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | cfg_if! {
[INFO] [stdout]   | ^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]  --> crates/bellman/src/plonk/fft/mod.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | #[cfg(feature = "nightly")]
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]   = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[cfg(feature = "nightly")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | #[cfg(feature = "nightly")]
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `nightly`
[INFO] [stdout]   --> crates/bellman/src/plonk/fft/mod.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 20 |     if #[cfg(feature = "nightly")] {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected values for `feature` are: `allocator`, `asm`, `blake2-rfc`, `crossbeam`, `default`, `gm17`, `lazy_static`, `marlin`, `multicore`, `nolog`, `plonk`, `prefetch`, `redshift`, `sonic`, `tiny-keccak`, `wasm`, and `web-sys`
[INFO] [stdout]    = help: consider adding `nightly` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]  --> crates/bellman/src/plonk/commitments/transparent/iop/blake2s_trivial_iop.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout]   |                      ^^                                                                                         ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]   |
[INFO] [stdout] 9 -     static ref BASE_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout] 9 +     static ref BASE_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]  --> crates/bellman/src/plonk/commitments/transcript/prng.rs:6:55
[INFO] [stdout]   |
[INFO] [stdout] 6 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() };
[INFO] [stdout]   |                      ^^                                                                                          ^^
[INFO] [stdout]   |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]   |
[INFO] [stdout] 6 -     static ref STATELESS_PRNG_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() };
[INFO] [stdout] 6 +     static ref STATELESS_PRNG_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"S_Prng_F").to_state() ;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around block return value
[INFO] [stdout]   --> crates/bellman/src/plonk/commitments/transcript/mod.rs:13:51
[INFO] [stdout]    |
[INFO] [stdout] 13 | ...S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout]    |                      ^^                                                                                         ^^
[INFO] [stdout]    |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 13 -     static ref TRANSCRIPT_BLAKE2S_PARAMS: State = { Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() };
[INFO] [stdout] 13 +     static ref TRANSCRIPT_BLAKE2S_PARAMS: State = Params::new().hash_length(32).key(b"Squeamish Ossifrage").personal(b"Shaftoe").to_state() ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `And8Table`, `BooleanConstraintGate`, `DotProductGate`, `create_and8_table`, and `create_byte_split_table`
[INFO] [stdout]   --> crates/boojum/src/gadgets/u256/test.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 BooleanConstraintGate, ConstantsAllocatorGate, DotProductGate,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^                          ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |                 create_and8_table, create_byte_split_table, create_xor8_table, And8Table, Xor8Table,
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^                     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `array_chunks`
[INFO] [stdout]   --> crates/boojum/src/lib.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | #![feature(array_chunks)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `array_chunks`
[INFO] [stdout]   --> crates/boojum/src/lib.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | #![feature(array_chunks)]
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/boolean/mod.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/boolean/mod.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 203 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 212 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:369:5
[INFO] [stdout]     |
[INFO] [stdout] 369 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:515:5
[INFO] [stdout]     |
[INFO] [stdout] 515 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:564:5
[INFO] [stdout]     |
[INFO] [stdout] 564 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]     --> crates/boojum/src/gadgets/non_native_field/implementations/implementation_u16.rs:1279:5
[INFO] [stdout]      |
[INFO] [stdout] 1279 |     #[must_use]
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u16/mod.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u16/mod.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u160/mod.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u32/mod.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u32/mod.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:254:5
[INFO] [stdout]     |
[INFO] [stdout] 254 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:148:10
[INFO] [stdout]     |
[INFO] [stdout] 147 |       for (chunk, dst) in to_absorb
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 148 | |         .array_chunks::<AW>()
[INFO] [stdout]     | |         -^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 148 |         .into_iter().array_chunks::<AW>()
[INFO] [stdout]     |          ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:171:28
[INFO] [stdout]     |
[INFO] [stdout] 171 |     for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                            ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 171 |     for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if to_absorb.array_chunks::<AW>().remainder().is_empty() == false {
[INFO] [stdout]     |                  ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if to_absorb.into_iter().array_chunks::<AW>().remainder().is_empty() == false {
[INFO] [stdout]     |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:178:35
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let remainder = to_absorb.array_chunks::<AW>().remainder();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let remainder = to_absorb.into_iter().array_chunks::<AW>().remainder();
[INFO] [stdout]     |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/gates/dot_product_gate.rs:197:34
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .zip(terms_flattened.array_chunks_mut::<2>())
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F; N * 2]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/cs/gates/dot_product_gate.rs:207:38
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 for [a, b] in inputs.array_chunks::<2>() {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `[F; N * 2]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F; N * 2]: Iterator`
[INFO] [stdout]             which is required by `&mut [F; N * 2]: Iterator`
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/boolean/mod.rs:117:5
[INFO] [stdout]     |
[INFO] [stdout] 117 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/boolean/mod.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/prime_field_like.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 112 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:141:5
[INFO] [stdout]     |
[INFO] [stdout] 141 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 148 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 203 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 212 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:369:5
[INFO] [stdout]     |
[INFO] [stdout] 369 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:378:5
[INFO] [stdout]     |
[INFO] [stdout] 378 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:388:5
[INFO] [stdout]     |
[INFO] [stdout] 388 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:515:5
[INFO] [stdout]     |
[INFO] [stdout] 515 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:564:5
[INFO] [stdout]     |
[INFO] [stdout] 564 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/prime_field_like.rs:574:5
[INFO] [stdout]     |
[INFO] [stdout] 574 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 52 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/num/mod.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:126:5
[INFO] [stdout]     |
[INFO] [stdout] 126 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:51:5
[INFO] [stdout]    |
[INFO] [stdout] 51 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 59 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:63:5
[INFO] [stdout]    |
[INFO] [stdout] 63 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 67 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:80:5
[INFO] [stdout]    |
[INFO] [stdout] 80 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:87:5
[INFO] [stdout]    |
[INFO] [stdout] 87 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:91:5
[INFO] [stdout]    |
[INFO] [stdout] 91 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 107 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:115:5
[INFO] [stdout]     |
[INFO] [stdout] 115 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/impl_traits.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]     --> crates/boojum/src/gadgets/non_native_field/implementations/implementation_u16.rs:1279:5
[INFO] [stdout]      |
[INFO] [stdout] 1279 |     #[must_use]
[INFO] [stdout]      |     ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u16/mod.rs:143:5
[INFO] [stdout]     |
[INFO] [stdout] 143 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u16/mod.rs:165:5
[INFO] [stdout]     |
[INFO] [stdout] 165 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u160/mod.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 109 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u32/mod.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 152 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u32/mod.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 85 |     #[must_use]
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 123 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:232:5
[INFO] [stdout]     |
[INFO] [stdout] 232 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[must_use]` attribute cannot be used on trait methods in impl blocks
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:254:5
[INFO] [stdout]     |
[INFO] [stdout] 254 |     #[must_use]
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[must_use]` can be applied to data types, foreign functions, functions, inherent methods, provided trait methods, required trait methods, traits, and unions
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:148:10
[INFO] [stdout]     |
[INFO] [stdout] 147 |       for (chunk, dst) in to_absorb
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 148 | |         .array_chunks::<AW>()
[INFO] [stdout]     | |         -^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     | |_________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 148 |         .into_iter().array_chunks::<AW>()
[INFO] [stdout]     |          ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:171:28
[INFO] [stdout]     |
[INFO] [stdout] 171 |     for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                            ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 171 |     for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if to_absorb.array_chunks::<AW>().remainder().is_empty() == false {
[INFO] [stdout]     |                  ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 176 |     if to_absorb.into_iter().array_chunks::<AW>().remainder().is_empty() == false {
[INFO] [stdout]     |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/algebraic_props/round_function.rs:178:35
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let remainder = to_absorb.array_chunks::<AW>().remainder();
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 178 |         let remainder = to_absorb.into_iter().array_chunks::<AW>().remainder();
[INFO] [stdout]     |                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/gates/dot_product_gate.rs:197:34
[INFO] [stdout]     |
[INFO] [stdout] 197 |             .zip(terms_flattened.array_chunks_mut::<2>())
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F; N * 2]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/cs/gates/dot_product_gate.rs:207:38
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 for [a, b] in inputs.array_chunks::<2>() {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `[F; N * 2]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F; N * 2]: Iterator`
[INFO] [stdout]             which is required by `&mut [F; N * 2]: Iterator`
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:380:38
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let mut src_c0_chunks = c0_chunk.array_chunks::<32>();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let mut src_c0_chunks = c0_chunk.into_iter().array_chunks::<32>();
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:381:38
[INFO] [stdout]     |
[INFO] [stdout] 381 |     let mut src_c1_chunks = c1_chunk.array_chunks::<32>();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 381 |     let mut src_c1_chunks = c1_chunk.into_iter().array_chunks::<32>();
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for mutable reference `&mut [MaybeUninit<F>]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:383:36
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let mut dst_c0_chunks = dst_c0.array_chunks_mut::<16>();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for mutable reference `&mut [MaybeUninit<F>]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:384:36
[INFO] [stdout]     |
[INFO] [stdout] 384 |     let mut dst_c1_chunks = dst_c1.array_chunks_mut::<16>();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:386:34
[INFO] [stdout]     |
[INFO] [stdout] 386 |     let mut roots_chunks = roots.array_chunks::<16>();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 386 |     let mut roots_chunks = roots.into_iter().array_chunks::<16>();
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<goldilocks::GoldilocksField>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:982:38
[INFO] [stdout]     |
[INFO] [stdout] 982 |         for [even, odd] in monomials.array_chunks::<2>() {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `Vec<goldilocks::GoldilocksField>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 982 |         for [even, odd] in monomials.into_iter().array_chunks::<2>() {
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<goldilocks::GoldilocksField>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/fri/mod.rs:1002:51
[INFO] [stdout]      |
[INFO] [stdout] 1002 |         for (idx, [even, odd]) in values_on_coset.array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                   ^^^^^^^^^^^^ `Vec<goldilocks::GoldilocksField>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1002 |         for (idx, [even, odd]) in values_on_coset.into_iter().array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:380:38
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let mut src_c0_chunks = c0_chunk.array_chunks::<32>();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 380 |     let mut src_c0_chunks = c0_chunk.into_iter().array_chunks::<32>();
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:381:38
[INFO] [stdout]     |
[INFO] [stdout] 381 |     let mut src_c1_chunks = c1_chunk.array_chunks::<32>();
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 381 |     let mut src_c1_chunks = c1_chunk.into_iter().array_chunks::<32>();
[INFO] [stdout]     |                                      ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for mutable reference `&mut [MaybeUninit<F>]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:383:36
[INFO] [stdout]     |
[INFO] [stdout] 383 |     let mut dst_c0_chunks = dst_c0.array_chunks_mut::<16>();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for mutable reference `&mut [MaybeUninit<F>]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:384:36
[INFO] [stdout]     |
[INFO] [stdout] 384 |     let mut dst_c1_chunks = dst_c1.array_chunks_mut::<16>();
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/fri/mod.rs:386:34
[INFO] [stdout]     |
[INFO] [stdout] 386 |     let mut roots_chunks = roots.array_chunks::<16>();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 386 |     let mut roots_chunks = roots.into_iter().array_chunks::<16>();
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<lde::ArcGenericLdeStorage<F, P>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/prover.rs:1686:18
[INFO] [stdout]      |
[INFO] [stdout] 1685 | /             quotient_chunks_ldes
[INFO] [stdout] 1686 | |                 .array_chunks::<2>()
[INFO] [stdout]      | |                 -^^^^^^^^^^^^ `Vec<lde::ArcGenericLdeStorage<F, P>>` is not an iterator
[INFO] [stdout]      | |_________________|
[INFO] [stdout]      |
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 .into_iter().array_chunks::<2>()
[INFO] [stdout]      |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<lde::ArcGenericLdeStorage<F, P>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/prover.rs:1930:55
[INFO] [stdout]      |
[INFO] [stdout] 1930 |         let quotinents: Vec<_> = quotient_chunks_ldes.array_chunks::<2>().cloned().collect();
[INFO] [stdout]      |                                                       ^^^^^^^^^^^^ `Vec<lde::ArcGenericLdeStorage<F, P>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1930 |         let quotinents: Vec<_> = quotient_chunks_ldes.into_iter().array_chunks::<2>().cloned().collect();
[INFO] [stdout]      |                                                       ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<F>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/transcript.rs:118:32
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                                ^^^^^^^^^^^^ `Vec<F>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<lde::ArcGenericLdeStorage<F, P>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/prover.rs:1686:18
[INFO] [stdout]      |
[INFO] [stdout] 1685 | /             quotient_chunks_ldes
[INFO] [stdout] 1686 | |                 .array_chunks::<2>()
[INFO] [stdout]      | |                 -^^^^^^^^^^^^ `Vec<lde::ArcGenericLdeStorage<F, P>>` is not an iterator
[INFO] [stdout]      | |_________________|
[INFO] [stdout]      |
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1686 |                 .into_iter().array_chunks::<2>()
[INFO] [stdout]      |                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<lde::ArcGenericLdeStorage<F, P>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/prover.rs:1930:55
[INFO] [stdout]      |
[INFO] [stdout] 1930 |         let quotinents: Vec<_> = quotient_chunks_ldes.array_chunks::<2>().cloned().collect();
[INFO] [stdout]      |                                                       ^^^^^^^^^^^^ `Vec<lde::ArcGenericLdeStorage<F, P>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1930 |         let quotinents: Vec<_> = quotient_chunks_ldes.into_iter().array_chunks::<2>().cloned().collect();
[INFO] [stdout]      |                                                       ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/verifier.rs:2226:24
[INFO] [stdout]      |
[INFO] [stdout] 2226 |                     el.array_chunks::<2>()
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2226 |                     el.into_iter().array_chunks::<2>()
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<field::traits::field::ExtensionField<F, 2, EXT>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/verifier.rs:2464:64
[INFO] [stdout]      |
[INFO] [stdout] 2464 |                     for (i, [a, b]) in elements_to_interpolate.array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ^^^^^^^^^^^^ `Vec<field::traits::field::ExtensionField<F, 2, EXT>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2464 |                     for (i, [a, b]) in elements_to_interpolate.into_iter().array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<F>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/implementations/transcript.rs:118:32
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                                ^^^^^^^^^^^^ `Vec<F>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 118 |         for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[<H as cs::oracle::TreeHasher<F>>::Output]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/oracle/merkle_tree.rs:422:66
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         for (dst, src) in dst.iter_mut().zip(src.array_chunks::<2>()) {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^ `&[<H as cs::oracle::TreeHasher<F>>::Output]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         for (dst, src) in dst.iter_mut().zip(src.into_iter().array_chunks::<2>()) {
[INFO] [stdout]     |                                                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/cs/oracle/merkle_tree.rs:424:29
[INFO] [stdout]     |
[INFO] [stdout] 424 | ...                   dst.write(H::hash_into_node(left, right, 0));
[INFO] [stdout]     |                       ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/verifier.rs:2226:24
[INFO] [stdout]      |
[INFO] [stdout] 2226 |                     el.array_chunks::<2>()
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2226 |                     el.into_iter().array_chunks::<2>()
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<field::traits::field::ExtensionField<F, 2, EXT>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/cs/implementations/verifier.rs:2464:64
[INFO] [stdout]      |
[INFO] [stdout] 2464 |                     for (i, [a, b]) in elements_to_interpolate.array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ^^^^^^^^^^^^ `Vec<field::traits::field::ExtensionField<F, 2, EXT>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2464 |                     for (i, [a, b]) in elements_to_interpolate.into_iter().array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[<H as cs::oracle::TreeHasher<F>>::Output]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/cs/oracle/merkle_tree.rs:422:66
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         for (dst, src) in dst.iter_mut().zip(src.array_chunks::<2>()) {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^ `&[<H as cs::oracle::TreeHasher<F>>::Output]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 422 |                         for (dst, src) in dst.iter_mut().zip(src.into_iter().array_chunks::<2>()) {
[INFO] [stdout]     |                                                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/cs/oracle/merkle_tree.rs:424:29
[INFO] [stdout]     |
[INFO] [stdout] 424 | ...                   dst.write(H::hash_into_node(left, right, 0));
[INFO] [stdout]     |                       ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:162:27
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut a = a.array_chunks::<4>();
[INFO] [stdout]     |                           ^^^^^^^^^^^^ `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut &[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:163:27
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let mut b = b.array_chunks::<4>();
[INFO] [stdout]     |                           ^^^^^^^^^^^^ `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut &[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |             let mut dst = result.array_chunks_mut::<4>();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let a = a.map(|el| el.get_variable());
[INFO] [stdout]     |                         ^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:167:32
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let a = a.map(|el| el.get_variable());
[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] 167 |                 let a = a.map(|el: /* Type */| el.get_variable());
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let b = b.map(|el| el.get_variable());
[INFO] [stdout]     |                         ^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:168:32
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let b = b.map(|el| el.get_variable());
[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] 168 |                 let b = b.map(|el: /* Type */| el.get_variable());
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:172:44
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl<F: SmallField> Selectable<F> for Num<F> {
[INFO] [stdout]     |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 172 |             if a.remainder().is_empty() == false {
[INFO] [stdout]     |                                            ^^^^^ expected type parameter `F`, found `bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `arrayvec::ArrayVec<cs::Variable, LIMIT>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:367:49
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let mut chunks = vars_array_vec.array_chunks::<4>();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^ `arrayvec::ArrayVec<cs::Variable, LIMIT>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let mut chunks = vars_array_vec.into_iter().array_chunks::<4>();
[INFO] [stdout]     |                                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:375:37
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl<F: SmallField> Num<F> {
[INFO] [stdout]     |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 375 |                 if remainder_len != 0 {
[INFO] [stdout]     |                                     ^ expected type parameter `F`, found integer
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `{integer}`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:811:37
[INFO] [stdout]     |
[INFO] [stdout] 811 |                     .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[(cs::Variable, F)]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:822:44
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let mut chunks = input.array_chunks::<4>();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ `&[(cs::Variable, F)]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let mut chunks = input.into_iter().array_chunks::<4>();
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:833:37
[INFO] [stdout]     |
[INFO] [stdout] 833 | ...                   let mut tmp = a;
[INFO] [stdout]     |                           ^^^^^^^
[INFO] [stdout] 834 | ...                   tmp.mul_assign(&b);
[INFO] [stdout]     |                       --- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `tmp` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 833 |                                 let mut tmp: /* Type */ = a;
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:856:41
[INFO] [stdout]     |
[INFO] [stdout] 856 |                         .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[(cs::Variable, F)]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:874:44
[INFO] [stdout]     |
[INFO] [stdout] 874 |                     let mut chunks = input.array_chunks::<3>();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ `&[(cs::Variable, F)]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 874 |                     let mut chunks = input.into_iter().array_chunks::<3>();
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/boolean/mod.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:911:41
[INFO] [stdout]     |
[INFO] [stdout] 911 |                         .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> crates/boojum/src/gadgets/num/mod.rs:1257:9
[INFO] [stdout]      |
[INFO] [stdout] 1257 |         [self.variable]
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                 found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 8]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mixing_function.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 72 |       for (dst, src) in not_shifted_b_chunks
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 73 | |         .array_chunks_mut::<2>()
[INFO] [stdout]    | |_________-^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]   --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:162:27
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let mut a = a.array_chunks::<4>();
[INFO] [stdout]     |                           ^^^^^^^^^^^^ `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut &[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:163:27
[INFO] [stdout]     |
[INFO] [stdout] 163 |             let mut b = b.array_chunks::<4>();
[INFO] [stdout]     |                           ^^^^^^^^^^^^ `&[gadgets::num::Num<F>; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut &[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>; N]: Iterator`
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 8]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mixing_function.rs:128:10
[INFO] [stdout]     |
[INFO] [stdout] 127 |       for (dst, src) in not_shifted_b_chunks
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 128 | |         .array_chunks_mut::<2>()
[INFO] [stdout]     | |_________-^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:164:34
[INFO] [stdout]     |
[INFO] [stdout] 164 |             let mut dst = result.array_chunks_mut::<4>();
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:167:25
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let a = a.map(|el| el.get_variable());
[INFO] [stdout]     |                         ^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:167:32
[INFO] [stdout]     |
[INFO] [stdout] 167 |                 let a = a.map(|el| el.get_variable());
[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] 167 |                 let a = a.map(|el: /* Type */| el.get_variable());
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:168:25
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let b = b.map(|el| el.get_variable());
[INFO] [stdout]     |                         ^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:168:32
[INFO] [stdout]     |
[INFO] [stdout] 168 |                 let b = b.map(|el| el.get_variable());
[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] 168 |                 let b = b.map(|el: /* Type */| el.get_variable());
[INFO] [stdout]     |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:172:44
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl<F: SmallField> Selectable<F> for Num<F> {
[INFO] [stdout]     |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 172 |             if a.remainder().is_empty() == false {
[INFO] [stdout]     |                                            ^^^^^ expected type parameter `F`, found `bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `bool`
[INFO] [stdout]     = note: `bool` implements `PartialEq<{type error}>`
[INFO] [stdout] help: consider swapping the equality
[INFO] [stdout]     |
[INFO] [stdout] 172 -             if a.remainder().is_empty() == false {
[INFO] [stdout] 172 +             if false == a.remainder().is_empty() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::u8::UInt8<F>]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mod.rs:69:34
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut input_chunks = input.array_chunks::<BLAKE2S_BLOCK_SIZE>();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^ `&[gadgets::u8::UInt8<F>]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut input_chunks = input.into_iter().array_chunks::<BLAKE2S_BLOCK_SIZE>();
[INFO] [stdout]    |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mod.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 dst.write(word);
[INFO] [stdout]    |                 ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout]  35 | pub fn blake2s<F: SmallField, CS: ConstraintSystem<F>>(
[INFO] [stdout]     |                - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 103 |         assert!(len > 0);
[INFO] [stdout]     |                       ^ expected type parameter `F`, found integer
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `{integer}`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:104:23
[INFO] [stdout]     |
[INFO] [stdout]  35 | pub fn blake2s<F: SmallField, CS: ConstraintSystem<F>>(
[INFO] [stdout]     |                - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 104 |         assert!(len < BLAKE2S_BLOCK_SIZE);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ expected type parameter `F`, found `usize`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `arrayvec::ArrayVec<cs::Variable, LIMIT>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:367:49
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let mut chunks = vars_array_vec.array_chunks::<4>();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^ `arrayvec::ArrayVec<cs::Variable, LIMIT>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 367 |                 let mut chunks = vars_array_vec.into_iter().array_chunks::<4>();
[INFO] [stdout]     |                                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:375:37
[INFO] [stdout]     |
[INFO] [stdout] 193 | impl<F: SmallField> Num<F> {
[INFO] [stdout]     |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 375 |                 if remainder_len != 0 {
[INFO] [stdout]     |                                     ^ expected type parameter `F`, found integer
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `{integer}`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         dst.write(word);
[INFO] [stdout]     |         ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[MaybeUninit<gadgets::u8::UInt8<F>>; 32]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |     for (dst, src) in result.array_chunks_mut::<4>().zip(state[..8].iter()) {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<u8>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:247:27
[INFO] [stdout]     |
[INFO] [stdout] 247 |         for pair in input.array_chunks::<2>() {
[INFO] [stdout]     |                           ^^^^^^^^^^^^ `Vec<u8>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 247 |         for pair in input.into_iter().array_chunks::<2>() {
[INFO] [stdout]     |                           ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:811:37
[INFO] [stdout]     |
[INFO] [stdout] 811 |                     .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[(cs::Variable, F)]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:822:44
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let mut chunks = input.array_chunks::<4>();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ `&[(cs::Variable, F)]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 822 |                     let mut chunks = input.into_iter().array_chunks::<4>();
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:833:37
[INFO] [stdout]     |
[INFO] [stdout] 833 | ...                   let mut tmp = a;
[INFO] [stdout]     |                           ^^^^^^^
[INFO] [stdout] 834 | ...                   tmp.mul_assign(&b);
[INFO] [stdout]     |                       --- type must be known at this point
[INFO] [stdout]     |
[INFO] [stdout] help: consider giving `tmp` an explicit type
[INFO] [stdout]     |
[INFO] [stdout] 833 |                                 let mut tmp: /* Type */ = a;
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:856:41
[INFO] [stdout]     |
[INFO] [stdout] 856 |                         .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[cs::Variable; BYTES_PER_WORD]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/round_function.rs:179:23
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let mut it = word.array_chunks::<4>();
[INFO] [stdout]     |                       ^^^^^^^^^^^^ `&[cs::Variable; BYTES_PER_WORD]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             which is required by `&mut &[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             `[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[(cs::Variable, F)]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:874:44
[INFO] [stdout]     |
[INFO] [stdout] 874 |                     let mut chunks = input.array_chunks::<3>();
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ `&[(cs::Variable, F)]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 874 |                     let mut chunks = input.into_iter().array_chunks::<3>();
[INFO] [stdout]     |                                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<cs::Variable>` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/keccak256/mod.rs:83:33
[INFO] [stdout]    |
[INFO] [stdout] 83 |     for block in padded_message.array_chunks::<KECCAK_RATE_BYTES>() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ `Vec<cs::Variable>` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 83 |     for block in padded_message.into_iter().array_chunks::<KECCAK_RATE_BYTES>() {
[INFO] [stdout]    |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/keccak256/mod.rs:88:31
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     let tmp = block
[INFO] [stdout]    |                               ^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; N * 2]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/num/mod.rs:911:41
[INFO] [stdout]     |
[INFO] [stdout] 911 |                         .zip(gate.terms.array_chunks_mut::<2>())
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[MaybeUninit<gadgets::u8::UInt8<F>>; 32]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:102:28
[INFO] [stdout]     |
[INFO] [stdout] 102 |     for (i, dst) in result.array_chunks_mut::<8>().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |         for (dst, src) in dst.iter_mut().zip(state[i][0].iter()) {
[INFO] [stdout]     |                           ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |             dst.write(tmp);
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> crates/boojum/src/gadgets/num/mod.rs:1257:9
[INFO] [stdout]      |
[INFO] [stdout] 1257 |         [self.variable]
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                 found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<u8>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:230:28
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let mut it = input.array_chunks::<2>();
[INFO] [stdout]     |                            ^^^^^^^^^^^^ `Vec<u8>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let mut it = input.into_iter().array_chunks::<2>();
[INFO] [stdout]     |                            ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 8]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mixing_function.rs:73:10
[INFO] [stdout]    |
[INFO] [stdout] 72 |       for (dst, src) in not_shifted_b_chunks
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 73 | |         .array_chunks_mut::<2>()
[INFO] [stdout]    | |_________-^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]   --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 8]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mixing_function.rs:128:10
[INFO] [stdout]     |
[INFO] [stdout] 127 |       for (dst, src) in not_shifted_b_chunks
[INFO] [stdout]     |  _______________________-
[INFO] [stdout] 128 | |         .array_chunks_mut::<2>()
[INFO] [stdout]     | |_________-^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[&mut non_native_field::implementations::NonNativeFieldOverU16<F, T, N>; M]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/implementation_u16.rs:354:29
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let [a, b] = inputs.array_chunks_mut::<2>().next().unwrap();
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::u8::UInt8<F>]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mod.rs:69:34
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut input_chunks = input.array_chunks::<BLAKE2S_BLOCK_SIZE>();
[INFO] [stdout]    |                                  ^^^^^^^^^^^^ `&[gadgets::u8::UInt8<F>]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let mut input_chunks = input.into_iter().array_chunks::<BLAKE2S_BLOCK_SIZE>();
[INFO] [stdout]    |                                  ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/blake2s/mod.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 dst.write(word);
[INFO] [stdout]    |                 ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:103:23
[INFO] [stdout]     |
[INFO] [stdout]  35 | pub fn blake2s<F: SmallField, CS: ConstraintSystem<F>>(
[INFO] [stdout]     |                - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 103 |         assert!(len > 0);
[INFO] [stdout]     |                       ^ expected type parameter `F`, found integer
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `{integer}`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:104:23
[INFO] [stdout]     |
[INFO] [stdout]  35 | pub fn blake2s<F: SmallField, CS: ConstraintSystem<F>>(
[INFO] [stdout]     |                - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 104 |         assert!(len < BLAKE2S_BLOCK_SIZE);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ expected type parameter `F`, found `usize`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `usize`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         dst.write(word);
[INFO] [stdout]     |         ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[u16]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:48:24
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut it = words.array_chunks::<4>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[u16]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut it = words.into_iter().array_chunks::<4>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let mut it = words.array_chunks::<4>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let mut it = words.into_iter().array_chunks::<4>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[MaybeUninit<gadgets::u8::UInt8<F>>; 32]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/blake2s/mod.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 |     for (dst, src) in result.array_chunks_mut::<4>().zip(state[..8].iter()) {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:107:32
[INFO] [stdout]     |
[INFO] [stdout]  89 | pub fn u16_field_words_to_u1024<F: SmallField>(words: &[F]) -> U1024 {
[INFO] [stdout]     |                                 - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 107 |     if remainder.is_empty() == false {
[INFO] [stdout]     |                                ^^^^^ expected type parameter `F`, found `bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `bool`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:111:20
[INFO] [stdout]     |
[INFO] [stdout] 111 |             tmp |= el.as_u64_reduced() << shift;
[INFO] [stdout]     |                    ^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 12]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/poseidon2/mod.rs:24:27
[INFO] [stdout]    |
[INFO] [stdout] 24 |             let a = state.array_chunks::<8>().next().copied().unwrap();
[INFO] [stdout]    |                           ^^^^^^^^^^^^ `[cs::Variable; 12]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 12]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/poseidon2/mod.rs:25:32
[INFO] [stdout]    |
[INFO] [stdout] 25 |             let b = state[8..].array_chunks::<4>().next().copied().unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&[cs::Variable; BYTES_PER_WORD]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/round_function.rs:179:23
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let mut it = word.array_chunks::<4>();
[INFO] [stdout]     |                       ^^^^^^^^^^^^ `&[cs::Variable; BYTES_PER_WORD]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `&[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             which is required by `&mut &[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             `[cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; BYTES_PER_WORD]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 12]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:173:31
[INFO] [stdout]     |
[INFO] [stdout] 173 |         for (dst, src) in tmp.array_chunks_mut::<4>().zip(state.array_chunks::<4>()) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&mut [cs::Variable; 12]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:173:65
[INFO] [stdout]     |
[INFO] [stdout] 173 |         for (dst, src) in tmp.array_chunks_mut::<4>().zip(state.array_chunks::<4>()) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^ `&mut [cs::Variable; 12]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; 12]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             which is required by `&mut &mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:174:34
[INFO] [stdout]     |
[INFO] [stdout] 174 |             for (dst, coeffs) in dst.iter_mut().zip(EXTERNAL_MDS_MATRIX_BLOCK.iter()) {
[INFO] [stdout]     |                                  ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<cs::Variable>` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/keccak256/mod.rs:83:33
[INFO] [stdout]    |
[INFO] [stdout] 83 |     for block in padded_message.array_chunks::<KECCAK_RATE_BYTES>() {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ `Vec<cs::Variable>` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 83 |     for block in padded_message.into_iter().array_chunks::<KECCAK_RATE_BYTES>() {
[INFO] [stdout]    |                                 ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/keccak256/mod.rs:88:31
[INFO] [stdout]    |
[INFO] [stdout] 88 |                     let tmp = block
[INFO] [stdout]    |                               ^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[MaybeUninit<gadgets::u8::UInt8<F>>; 32]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:102:28
[INFO] [stdout]     |
[INFO] [stdout] 102 |     for (i, dst) in result.array_chunks_mut::<8>().enumerate() {
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:103:27
[INFO] [stdout]     |
[INFO] [stdout] 103 |         for (dst, src) in dst.iter_mut().zip(state[i][0].iter()) {
[INFO] [stdout]     |                           ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/keccak256/mod.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |             dst.write(tmp);
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:173:26
[INFO] [stdout]     |
[INFO] [stdout] 172 |                       let raw_values = ins[offset..]
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 173 | |                         .array_chunks::<{ <EL as CSAllocatableExt<F>>::INTERNAL_STRUCT_LEN }>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:182:26
[INFO] [stdout]     |
[INFO] [stdout] 181 |                       let previous_tail = ins[(N + 1)..]
[INFO] [stdout]     |  _________________________________________-
[INFO] [stdout] 182 | |                         .array_chunks::<SW>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:218:14
[INFO] [stdout]     |
[INFO] [stdout] 217 |           let mut capacity_elements = self.tail[AW..]
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 218 | |             .array_chunks::<CW>()
[INFO] [stdout]     | |             -^^^^^^^^^^^^ `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:226:35
[INFO] [stdout]     |
[INFO] [stdout] 226 |         for to_absorb in encoding.array_chunks::<AW>() {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `[cs::Variable; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; N]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:230:18
[INFO] [stdout]     |
[INFO] [stdout] 229 |               capacity_elements = result_state[AW..]
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 230 | |                 .array_chunks::<CW>()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[&mut non_native_field::implementations::NonNativeFieldOverU16<F, T, N>; M]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/implementation_u16.rs:354:29
[INFO] [stdout]     |
[INFO] [stdout] 354 |         let [a, b] = inputs.array_chunks_mut::<2>().next().unwrap();
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:354:14
[INFO] [stdout]     |
[INFO] [stdout] 353 |           let mut capacity_elements = self.head[AW..]
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 354 | |             .array_chunks::<CW>()
[INFO] [stdout]     | |             -^^^^^^^^^^^^ `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:362:35
[INFO] [stdout]     |
[INFO] [stdout] 362 |         for to_absorb in encoding.array_chunks::<AW>() {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `[cs::Variable; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; N]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 365 |               capacity_elements = result_state[AW..]
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 366 | |                 .array_chunks::<CW>()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:529:50
[INFO] [stdout]     |
[INFO] [stdout] 529 |                 let mut current_state = ins[1..].array_chunks::<SW>().next().copied().unwrap();
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[u16]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:48:24
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut it = words.array_chunks::<4>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[u16]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let mut it = words.into_iter().array_chunks::<4>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::num::Num<F>]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:81:24
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let it = input.array_chunks::<AW>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let it = input.into_iter().array_chunks::<AW>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[F]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:92:24
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let mut it = words.array_chunks::<4>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[F]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 92 |     let mut it = words.into_iter().array_chunks::<4>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:108:51
[INFO] [stdout]     |
[INFO] [stdout] 108 |                     let mut state = *inputs[..SW].array_chunks::<SW>().next().unwrap();
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:107:32
[INFO] [stdout]     |
[INFO] [stdout]  89 | pub fn u16_field_words_to_u1024<F: SmallField>(words: &[F]) -> U1024 {
[INFO] [stdout]     |                                 - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 107 |     if remainder.is_empty() == false {
[INFO] [stdout]     |                                ^^^^^ expected type parameter `F`, found `bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected type parameter `F`
[INFO] [stdout]                          found type `bool`
[INFO] [stdout]     = note: `bool` implements `PartialEq<{type error}>`
[INFO] [stdout] help: consider swapping the equality
[INFO] [stdout]     |
[INFO] [stdout] 107 -     if remainder.is_empty() == false {
[INFO] [stdout] 107 +     if false == remainder.is_empty() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/non_native_field/implementations/utils.rs:111:20
[INFO] [stdout]     |
[INFO] [stdout] 111 |             tmp |= el.as_u64_reduced() << shift;
[INFO] [stdout]     |                    ^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:109:57
[INFO] [stdout]     |
[INFO] [stdout] 109 |                     let to_absorb = inputs[SW..AW + SW].array_chunks::<AW>().next().unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:122:68
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 &Place::from_variables(input_chunks[round_id].map(|x| x.get_variable()))[..],
[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] 122 |                 &Place::from_variables(input_chunks[round_id].map(|x: /* Type */| x.get_variable()))[..],
[INFO] [stdout]     |                                                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/mod.rs:203:26
[INFO] [stdout]     |
[INFO] [stdout] 202 |                       let raw_values = ins[offset..]
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 203 | |                         .array_chunks::<{ <EL as CSAllocatableExt<F>>::INTERNAL_STRUCT_LEN }>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 12]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/poseidon2/mod.rs:24:27
[INFO] [stdout]    |
[INFO] [stdout] 24 |             let a = state.array_chunks::<8>().next().copied().unwrap();
[INFO] [stdout]    |                           ^^^^^^^^^^^^ `[cs::Variable; 12]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 12]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/mod.rs:212:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                       let previous_tail = ins[(N + 1)..]
[INFO] [stdout]     |  _________________________________________-
[INFO] [stdout] 212 | |                         .array_chunks::<T>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/poseidon2/mod.rs:25:32
[INFO] [stdout]    |
[INFO] [stdout] 25 |             let b = state[8..].array_chunks::<4>().next().copied().unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 12]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:173:31
[INFO] [stdout]     |
[INFO] [stdout] 173 |         for (dst, src) in tmp.array_chunks_mut::<4>().zip(state.array_chunks::<4>()) {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `&mut [cs::Variable; 12]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:173:65
[INFO] [stdout]     |
[INFO] [stdout] 173 |         for (dst, src) in tmp.array_chunks_mut::<4>().zip(state.array_chunks::<4>()) {
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^ `&mut [cs::Variable; 12]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; 12]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             `&mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             which is required by `&mut &mut [cs::Variable; 12]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/poseidon2/mod.rs:174:34
[INFO] [stdout]     |
[INFO] [stdout] 174 |             for (dst, coeffs) in dst.iter_mut().zip(EXTERNAL_MDS_MATRIX_BLOCK.iter()) {
[INFO] [stdout]     |                                  ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<gadgets::num::Num<F>>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/recursion/recursive_transcript.rs:219:32
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                                ^^^^^^^^^^^^ `Vec<gadgets::num::Num<F>>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:173:26
[INFO] [stdout]     |
[INFO] [stdout] 172 |                       let raw_values = ins[offset..]
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 173 | |                         .array_chunks::<{ <EL as CSAllocatableExt<F>>::INTERNAL_STRUCT_LEN }>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:182:26
[INFO] [stdout]     |
[INFO] [stdout] 181 |                       let previous_tail = ins[(N + 1)..]
[INFO] [stdout]     |  _________________________________________-
[INFO] [stdout] 182 | |                         .array_chunks::<SW>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:218:14
[INFO] [stdout]     |
[INFO] [stdout] 217 |           let mut capacity_elements = self.tail[AW..]
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 218 | |             .array_chunks::<CW>()
[INFO] [stdout]     | |             -^^^^^^^^^^^^ `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:226:35
[INFO] [stdout]     |
[INFO] [stdout] 226 |         for to_absorb in encoding.array_chunks::<AW>() {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `[cs::Variable; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; N]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:230:18
[INFO] [stdout]     |
[INFO] [stdout] 229 |               capacity_elements = result_state[AW..]
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 230 | |                 .array_chunks::<CW>()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:354:14
[INFO] [stdout]     |
[INFO] [stdout] 353 |           let mut capacity_elements = self.head[AW..]
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 354 | |             .array_chunks::<CW>()
[INFO] [stdout]     | |             -^^^^^^^^^^^^ `[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]     | |_____________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::num::Num<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::num::Num<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; N]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:362:35
[INFO] [stdout]     |
[INFO] [stdout] 362 |         for to_absorb in encoding.array_chunks::<AW>() {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ `[cs::Variable; N]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable; N]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable; N]: Iterator`
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::num::Num<F>]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:1722:24
[INFO] [stdout]      |
[INFO] [stdout] 1722 |                     el.array_chunks::<2>()
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1722 |                     el.into_iter().array_chunks::<2>()
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:366:18
[INFO] [stdout]     |
[INFO] [stdout] 365 |               capacity_elements = result_state[AW..]
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 366 | |                 .array_chunks::<CW>()
[INFO] [stdout]     | |                 -^^^^^^^^^^^^ `[cs::Variable]` is not an iterator
[INFO] [stdout]     | |_________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[cs::Variable]: Iterator`
[INFO] [stdout]             which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/full_state_queue.rs:529:50
[INFO] [stdout]     |
[INFO] [stdout] 529 |                 let mut current_state = ins[1..].array_chunks::<SW>().next().copied().unwrap();
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<prime_field_like::NumExtAsFieldWrapper<F, EXT, CS>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:1964:64
[INFO] [stdout]      |
[INFO] [stdout] 1964 |                     for (i, [a, b]) in elements_to_interpolate.array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ^^^^^^^^^^^^ `Vec<prime_field_like::NumExtAsFieldWrapper<F, EXT, CS>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1964 |                     for (i, [a, b]) in elements_to_interpolate.into_iter().array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> crates/bellman/src/plonk/prover/mod.rs:645:13
[INFO] [stdout]     |
[INFO] [stdout] 645 | type Iop<E: Engine> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout]     |             ^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]     = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout] 645 - type Iop<E: Engine> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout] 645 + type Iop<E> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout]     |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]     |
[INFO] [stdout] 645 | type Iop<E: Engine> = TrivialBlake2sIOP<<E as /* Trait */>::Fr>;
[INFO] [stdout]     |                                         +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> crates/bellman/src/plonk/prover/mod.rs:646:13
[INFO] [stdout]     |
[INFO] [stdout] 646 | type Fri<E: Engine> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout]     |             ^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout] 646 - type Fri<E: Engine> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout] 646 + type Fri<E> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout]     |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]     |
[INFO] [stdout] 646 | type Fri<E: Engine> = NaiveFriIop<<E as /* Trait */>::Fr, Iop<E>>;
[INFO] [stdout]     |                                   +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::num::Num<F>]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:81:24
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let it = input.array_chunks::<AW>();
[INFO] [stdout]    |                        ^^^^^^^^^^^^ `&[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let it = input.into_iter().array_chunks::<AW>();
[INFO] [stdout]    |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[T]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:2177:24
[INFO] [stdout]      |
[INFO] [stdout] 2177 |         for src in src.array_chunks::<2>() {
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[T]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2177 |         for src in src.into_iter().array_chunks::<2>() {
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:108:51
[INFO] [stdout]     |
[INFO] [stdout] 108 |                     let mut state = *inputs[..SW].array_chunks::<SW>().next().unwrap();
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/cs.rs:496:13
[INFO] [stdout]     |
[INFO] [stdout] 496 |             drop(lde);
[INFO] [stdout]     |             ^^^^^---^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  argument has type `&&data_structures::PolynomialProxy<'_, <E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 496 -             drop(lde);
[INFO] [stdout] 496 +             let _ = lde;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/cs.rs:503:9
[INFO] [stdout]     |
[INFO] [stdout] 503 |         drop(lde_without_dilation);
[INFO] [stdout]     |         ^^^^^--------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `Option<&PolynomialProxy<'_, <E as ScalarEngine>::Fr, Values>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-5a02af0498d7b7f9.long-type-6488509333405448899.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 503 -         drop(lde_without_dilation);
[INFO] [stdout] 503 +         let _ = lde_without_dilation;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:428:9
[INFO] [stdout]     |
[INFO] [stdout] 428 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 428 -         drop(constants_poly_ref);
[INFO] [stdout] 428 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:449:9
[INFO] [stdout]     |
[INFO] [stdout] 449 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 449 -         drop(q_a_ref);
[INFO] [stdout] 449 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:450:9
[INFO] [stdout]     |
[INFO] [stdout] 450 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 450 -         drop(a_ref);
[INFO] [stdout] 450 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:458:9
[INFO] [stdout]     |
[INFO] [stdout] 458 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 458 -         drop(q_b_ref);
[INFO] [stdout] 458 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:459:9
[INFO] [stdout]     |
[INFO] [stdout] 459 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 459 -         drop(b_ref);
[INFO] [stdout] 459 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:467:9
[INFO] [stdout]     |
[INFO] [stdout] 467 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 467 -         drop(q_c_ref);
[INFO] [stdout] 467 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 468 -         drop(c_ref);
[INFO] [stdout] 468 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:476:9
[INFO] [stdout]     |
[INFO] [stdout] 476 |         drop(q_d_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 476 -         drop(q_d_ref);
[INFO] [stdout] 476 +         let _ = q_d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:109:57
[INFO] [stdout]     |
[INFO] [stdout] 109 |                     let to_absorb = inputs[SW..AW + SW].array_chunks::<AW>().next().unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:477:9
[INFO] [stdout]     |
[INFO] [stdout] 477 |         drop(d_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 477 -         drop(d_ref);
[INFO] [stdout] 477 +         let _ = d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:487:9
[INFO] [stdout]     |
[INFO] [stdout] 487 |         drop(q_m_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 487 -         drop(q_m_ref);
[INFO] [stdout] 487 +         let _ = q_m_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 488 -         drop(a_ref);
[INFO] [stdout] 488 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:489:9
[INFO] [stdout]     |
[INFO] [stdout] 489 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 489 -         drop(b_ref);
[INFO] [stdout] 489 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:497:9
[INFO] [stdout]     |
[INFO] [stdout] 497 |         drop(q_d_next_ref);
[INFO] [stdout]     |         ^^^^^------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 497 -         drop(q_d_next_ref);
[INFO] [stdout] 497 +         let _ = q_d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:498:9
[INFO] [stdout]     |
[INFO] [stdout] 498 |         drop(d_next_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 498 -         drop(d_next_ref);
[INFO] [stdout] 498 +         let _ = d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 405 -         drop(constants_poly_ref);
[INFO] [stdout] 405 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/queue_optimizer/mod.rs:122:68
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 &Place::from_variables(input_chunks[round_id].map(|x| x.get_variable()))[..],
[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] 122 |                 &Place::from_variables(input_chunks[round_id].map(|x: /* Type */| x.get_variable()))[..],
[INFO] [stdout]     |                                                                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:426:9
[INFO] [stdout]     |
[INFO] [stdout] 426 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 426 -         drop(q_a_ref);
[INFO] [stdout] 426 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:427:9
[INFO] [stdout]     |
[INFO] [stdout] 427 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 427 -         drop(a_ref);
[INFO] [stdout] 427 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 435 -         drop(q_b_ref);
[INFO] [stdout] 435 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:436:9
[INFO] [stdout]     |
[INFO] [stdout] 436 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 436 -         drop(b_ref);
[INFO] [stdout] 436 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 444 -         drop(q_c_ref);
[INFO] [stdout] 444 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 445 -         drop(c_ref);
[INFO] [stdout] 445 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:455:9
[INFO] [stdout]     |
[INFO] [stdout] 455 |         drop(q_m_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 455 -         drop(q_m_ref);
[INFO] [stdout] 455 +         let _ = q_m_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 456 -         drop(a_ref);
[INFO] [stdout] 456 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:457:9
[INFO] [stdout]     |
[INFO] [stdout] 457 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 457 -         drop(b_ref);
[INFO] [stdout] 457 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 452 -         drop(constants_poly_ref);
[INFO] [stdout] 452 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 473 -         drop(q_a_ref);
[INFO] [stdout] 473 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 474 -         drop(a_ref);
[INFO] [stdout] 474 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:482:9
[INFO] [stdout]     |
[INFO] [stdout] 482 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 482 -         drop(q_b_ref);
[INFO] [stdout] 482 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:483:9
[INFO] [stdout]     |
[INFO] [stdout] 483 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 483 -         drop(b_ref);
[INFO] [stdout] 483 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 491 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 491 -         drop(q_c_ref);
[INFO] [stdout] 491 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 492 -         drop(c_ref);
[INFO] [stdout] 492 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 |         drop(q_d_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 500 -         drop(q_d_ref);
[INFO] [stdout] 500 +         let _ = q_d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:501:9
[INFO] [stdout]     |
[INFO] [stdout] 501 |         drop(d_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 501 -         drop(d_ref);
[INFO] [stdout] 501 +         let _ = d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:514:9
[INFO] [stdout]     |
[INFO] [stdout] 514 |         drop(q_m_ab_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 514 -         drop(q_m_ab_ref);
[INFO] [stdout] 514 +         let _ = q_m_ab_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:515:9
[INFO] [stdout]     |
[INFO] [stdout] 515 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 515 -         drop(a_ref);
[INFO] [stdout] 515 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:516:9
[INFO] [stdout]     |
[INFO] [stdout] 516 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 516 -         drop(b_ref);
[INFO] [stdout] 516 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:529:9
[INFO] [stdout]     |
[INFO] [stdout] 529 |         drop(q_m_ac_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 529 -         drop(q_m_ac_ref);
[INFO] [stdout] 529 +         let _ = q_m_ac_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:530:9
[INFO] [stdout]     |
[INFO] [stdout] 530 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 530 -         drop(a_ref);
[INFO] [stdout] 530 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 531 -         drop(c_ref);
[INFO] [stdout] 531 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:539:9
[INFO] [stdout]     |
[INFO] [stdout] 539 |         drop(q_d_next_ref);
[INFO] [stdout]     |         ^^^^^------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 539 -         drop(q_d_next_ref);
[INFO] [stdout] 539 +         let _ = q_d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         drop(d_next_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 540 -         drop(d_next_ref);
[INFO] [stdout] 540 +         let _ = d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1130:17
[INFO] [stdout]      |
[INFO] [stdout] 1130 |                 drop(a_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1130 -                 drop(a_ref);
[INFO] [stdout] 1130 +                 let _ = a_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1140:17
[INFO] [stdout]      |
[INFO] [stdout] 1140 |                 drop(b_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1140 -                 drop(b_ref);
[INFO] [stdout] 1140 +                 let _ = b_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1147:17
[INFO] [stdout]      |
[INFO] [stdout] 1147 |                 drop(c_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1147 -                 drop(c_ref);
[INFO] [stdout] 1147 +                 let _ = c_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/round_function.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     for (dst, src) in result.iter_mut().zip(u4_pieces.array_chunks::<2>()) {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^ `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 64]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 64]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/round_function.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         dst.write(as_u8);
[INFO] [stdout]    |         ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/mod.rs:203:26
[INFO] [stdout]     |
[INFO] [stdout] 202 |                       let raw_values = ins[offset..]
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 203 | |                         .array_chunks::<{ <EL as CSAllocatableExt<F>>::INTERNAL_STRUCT_LEN }>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[F]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/queue/mod.rs:212:26
[INFO] [stdout]     |
[INFO] [stdout] 211 |                       let previous_tail = ins[(N + 1)..]
[INFO] [stdout]     |  _________________________________________-
[INFO] [stdout] 212 | |                         .array_chunks::<T>()
[INFO] [stdout]     | |                         -^^^^^^^^^^^^ `[F]` is not an iterator
[INFO] [stdout]     | |_________________________|
[INFO] [stdout]     |
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[F]: Iterator`
[INFO] [stdout]             which is required by `&mut [F]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 64]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/sha256/round_function.rs:277:33
[INFO] [stdout]     |
[INFO] [stdout] 277 |             .zip(le_4bit_chunks.array_chunks_mut::<8>())
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<gadgets::u8::UInt8<F>>` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:66:46
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for (round, input_bytes) in full_message.array_chunks::<SHA256_BLOCK_SIZE>().enumerate() {
[INFO] [stdout]    |                                              ^^^^^^^^^^^^ `Vec<gadgets::u8::UInt8<F>>` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for (round, input_bytes) in full_message.into_iter().array_chunks::<SHA256_BLOCK_SIZE>().enumerate() {
[INFO] [stdout]    |                                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |             .zip(input_bytes.array_chunks::<4>())
[INFO] [stdout]    |                  ^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 86 |       for (le_4bit_chunks, dst) in final_4bit_chunks
[INFO] [stdout]    |  __________________________________-
[INFO] [stdout] 87 | |         .array_chunks::<8>()
[INFO] [stdout]    | |         -^^^^^^^^^^^^ `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]    | |_________|
[INFO] [stdout]    |
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 64]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 64]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<gadgets::num::Num<F>>` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/recursion/recursive_transcript.rs:219:32
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for chunk in to_absorb.array_chunks::<AW>() {
[INFO] [stdout]     |                                ^^^^^^^^^^^^ `Vec<gadgets::num::Num<F>>` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]     |
[INFO] [stdout] 219 |         for chunk in to_absorb.into_iter().array_chunks::<AW>() {
[INFO] [stdout]     |                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 32]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         .zip(output.array_chunks_mut::<4>())
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]   --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:90:35
[INFO] [stdout]    |
[INFO] [stdout] 90 |         for (dst, [low, high]) in dst.iter_mut().zip(le_4bit_chunks.array_chunks::<2>()) {
[INFO] [stdout]    |                                   ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:90:54
[INFO] [stdout]    |
[INFO] [stdout] 90 |         for (dst, [low, high]) in dst.iter_mut().zip(le_4bit_chunks.array_chunks::<2>()) {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> crates/bellman/src/plonk/prover/mod.rs:645:13
[INFO] [stdout]     |
[INFO] [stdout] 645 | type Iop<E: Engine> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout]     |             ^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]     = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout] 645 - type Iop<E: Engine> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout] 645 + type Iop<E> = TrivialBlake2sIOP<E::Fr>;
[INFO] [stdout]     |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]     |
[INFO] [stdout] 645 | type Iop<E: Engine> = TrivialBlake2sIOP<<E as /* Trait */>::Fr>;
[INFO] [stdout]     |                                         +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]    --> crates/bellman/src/plonk/prover/mod.rs:646:13
[INFO] [stdout]     |
[INFO] [stdout] 646 | type Fri<E: Engine> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout]     |             ^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]     |
[INFO] [stdout]     = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]             see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]     = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout] help: remove this bound
[INFO] [stdout]     |
[INFO] [stdout] 646 - type Fri<E: Engine> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout] 646 + type Fri<E> = NaiveFriIop<E::Fr, Iop<E>>;
[INFO] [stdout]     |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]     |
[INFO] [stdout] 646 | type Fri<E: Engine> = NaiveFriIop<<E as /* Trait */>::Fr, Iop<E>>;
[INFO] [stdout]     |                                   +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/cs.rs:496:13
[INFO] [stdout]     |
[INFO] [stdout] 496 |             drop(lde);
[INFO] [stdout]     |             ^^^^^---^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  argument has type `&&PolynomialProxy<'_, <E as ScalarEngine>::Fr, Values>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-345e3a8d2da686ad.long-type-15796608505669832930.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 496 -             drop(lde);
[INFO] [stdout] 496 +             let _ = lde;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/cs.rs:503:9
[INFO] [stdout]     |
[INFO] [stdout] 503 |         drop(lde_without_dilation);
[INFO] [stdout]     |         ^^^^^--------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `Option<&PolynomialProxy<'_, <E as ScalarEngine>::Fr, Values>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-345e3a8d2da686ad.long-type-14417471684035152467.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 503 -         drop(lde_without_dilation);
[INFO] [stdout] 503 +         let _ = lde_without_dilation;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/cs.rs:3723:13
[INFO] [stdout]      |
[INFO] [stdout] 3723 |             drop(a_ref);
[INFO] [stdout]      |             ^^^^^-----^
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 3723 -             drop(a_ref);
[INFO] [stdout] 3723 +             let _ = a_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:428:9
[INFO] [stdout]     |
[INFO] [stdout] 428 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&Polynomial<<E as ScalarEngine>::Fr, Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-345e3a8d2da686ad.long-type-14311407315006432516.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 428 -         drop(constants_poly_ref);
[INFO] [stdout] 428 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:449:9
[INFO] [stdout]     |
[INFO] [stdout] 449 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 449 -         drop(q_a_ref);
[INFO] [stdout] 449 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:450:9
[INFO] [stdout]     |
[INFO] [stdout] 450 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 450 -         drop(a_ref);
[INFO] [stdout] 450 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:458:9
[INFO] [stdout]     |
[INFO] [stdout] 458 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 458 -         drop(q_b_ref);
[INFO] [stdout] 458 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:459:9
[INFO] [stdout]     |
[INFO] [stdout] 459 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 459 -         drop(b_ref);
[INFO] [stdout] 459 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:467:9
[INFO] [stdout]     |
[INFO] [stdout] 467 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 467 -         drop(q_c_ref);
[INFO] [stdout] 467 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:468:9
[INFO] [stdout]     |
[INFO] [stdout] 468 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 468 -         drop(c_ref);
[INFO] [stdout] 468 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:476:9
[INFO] [stdout]     |
[INFO] [stdout] 476 |         drop(q_d_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 476 -         drop(q_d_ref);
[INFO] [stdout] 476 +         let _ = q_d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:477:9
[INFO] [stdout]     |
[INFO] [stdout] 477 |         drop(d_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 477 -         drop(d_ref);
[INFO] [stdout] 477 +         let _ = d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:487:9
[INFO] [stdout]     |
[INFO] [stdout] 487 |         drop(q_m_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 487 -         drop(q_m_ref);
[INFO] [stdout] 487 +         let _ = q_m_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:488:9
[INFO] [stdout]     |
[INFO] [stdout] 488 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 488 -         drop(a_ref);
[INFO] [stdout] 488 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:489:9
[INFO] [stdout]     |
[INFO] [stdout] 489 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 489 -         drop(b_ref);
[INFO] [stdout] 489 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:497:9
[INFO] [stdout]     |
[INFO] [stdout] 497 |         drop(q_d_next_ref);
[INFO] [stdout]     |         ^^^^^------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 497 -         drop(q_d_next_ref);
[INFO] [stdout] 497 +         let _ = q_d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/main_gate_with_d_next.rs:498:9
[INFO] [stdout]     |
[INFO] [stdout] 498 |         drop(d_next_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 498 -         drop(d_next_ref);
[INFO] [stdout] 498 +         let _ = d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:405:9
[INFO] [stdout]     |
[INFO] [stdout] 405 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&Polynomial<<E as ScalarEngine>::Fr, Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-345e3a8d2da686ad.long-type-14311407315006432516.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 405 -         drop(constants_poly_ref);
[INFO] [stdout] 405 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:426:9
[INFO] [stdout]     |
[INFO] [stdout] 426 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 426 -         drop(q_a_ref);
[INFO] [stdout] 426 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:427:9
[INFO] [stdout]     |
[INFO] [stdout] 427 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 427 -         drop(a_ref);
[INFO] [stdout] 427 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 435 -         drop(q_b_ref);
[INFO] [stdout] 435 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:436:9
[INFO] [stdout]     |
[INFO] [stdout] 436 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 436 -         drop(b_ref);
[INFO] [stdout] 436 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:444:9
[INFO] [stdout]     |
[INFO] [stdout] 444 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 444 -         drop(q_c_ref);
[INFO] [stdout] 444 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 445 -         drop(c_ref);
[INFO] [stdout] 445 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:455:9
[INFO] [stdout]     |
[INFO] [stdout] 455 |         drop(q_m_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 455 -         drop(q_m_ref);
[INFO] [stdout] 455 +         let _ = q_m_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 456 -         drop(a_ref);
[INFO] [stdout] 456 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/naive_main_gate.rs:457:9
[INFO] [stdout]     |
[INFO] [stdout] 457 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 457 -         drop(b_ref);
[INFO] [stdout] 457 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |         drop(constants_poly_ref);
[INFO] [stdout]     |         ^^^^^------------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&Polynomial<<E as ScalarEngine>::Fr, Coefficients>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/zksync_bellman-345e3a8d2da686ad.long-type-14311407315006432516.txt'
[INFO] [stdout]     = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 452 -         drop(constants_poly_ref);
[INFO] [stdout] 452 +         let _ = constants_poly_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |         drop(q_a_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 473 -         drop(q_a_ref);
[INFO] [stdout] 473 +         let _ = q_a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 474 -         drop(a_ref);
[INFO] [stdout] 474 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:482:9
[INFO] [stdout]     |
[INFO] [stdout] 482 |         drop(q_b_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 482 -         drop(q_b_ref);
[INFO] [stdout] 482 +         let _ = q_b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:483:9
[INFO] [stdout]     |
[INFO] [stdout] 483 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 483 -         drop(b_ref);
[INFO] [stdout] 483 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:491:9
[INFO] [stdout]     |
[INFO] [stdout] 491 |         drop(q_c_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 491 -         drop(q_c_ref);
[INFO] [stdout] 491 +         let _ = q_c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:492:9
[INFO] [stdout]     |
[INFO] [stdout] 492 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 492 -         drop(c_ref);
[INFO] [stdout] 492 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 |         drop(q_d_ref);
[INFO] [stdout]     |         ^^^^^-------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 500 -         drop(q_d_ref);
[INFO] [stdout] 500 +         let _ = q_d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:501:9
[INFO] [stdout]     |
[INFO] [stdout] 501 |         drop(d_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 501 -         drop(d_ref);
[INFO] [stdout] 501 +         let _ = d_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:514:9
[INFO] [stdout]     |
[INFO] [stdout] 514 |         drop(q_m_ab_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 514 -         drop(q_m_ab_ref);
[INFO] [stdout] 514 +         let _ = q_m_ab_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:515:9
[INFO] [stdout]     |
[INFO] [stdout] 515 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 515 -         drop(a_ref);
[INFO] [stdout] 515 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:516:9
[INFO] [stdout]     |
[INFO] [stdout] 516 |         drop(b_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 516 -         drop(b_ref);
[INFO] [stdout] 516 +         let _ = b_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:529:9
[INFO] [stdout]     |
[INFO] [stdout] 529 |         drop(q_m_ac_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 529 -         drop(q_m_ac_ref);
[INFO] [stdout] 529 +         let _ = q_m_ac_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:530:9
[INFO] [stdout]     |
[INFO] [stdout] 530 |         drop(a_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 530 -         drop(a_ref);
[INFO] [stdout] 530 +         let _ = a_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:531:9
[INFO] [stdout]     |
[INFO] [stdout] 531 |         drop(c_ref);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 531 -         drop(c_ref);
[INFO] [stdout] 531 +         let _ = c_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:539:9
[INFO] [stdout]     |
[INFO] [stdout] 539 |         drop(q_d_next_ref);
[INFO] [stdout]     |         ^^^^^------------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 539 -         drop(q_d_next_ref);
[INFO] [stdout] 539 +         let _ = q_d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> crates/bellman/src/plonk/better_better_cs/gates/selector_optimized_with_d_next.rs:540:9
[INFO] [stdout]     |
[INFO] [stdout] 540 |         drop(d_next_ref);
[INFO] [stdout]     |         ^^^^^----------^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 540 -         drop(d_next_ref);
[INFO] [stdout] 540 +         let _ = d_next_ref;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1130:17
[INFO] [stdout]      |
[INFO] [stdout] 1130 |                 drop(a_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1130 -                 drop(a_ref);
[INFO] [stdout] 1130 +                 let _ = a_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1140:17
[INFO] [stdout]      |
[INFO] [stdout] 1140 |                 drop(b_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1140 -                 drop(b_ref);
[INFO] [stdout] 1140 +                 let _ = b_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]     --> crates/bellman/src/plonk/better_better_cs/proof/mod.rs:1147:17
[INFO] [stdout]      |
[INFO] [stdout] 1147 |                 drop(c_ref);
[INFO] [stdout]      |                 ^^^^^-----^
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      argument has type `&polynomials::Polynomial<<E as pairing::zksync_ff::ScalarEngine>::Fr, polynomials::Values>`
[INFO] [stdout]      |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]      |
[INFO] [stdout] 1147 -                 drop(c_ref);
[INFO] [stdout] 1147 +                 let _ = c_ref;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[gadgets::num::Num<F>]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:1722:24
[INFO] [stdout]      |
[INFO] [stdout] 1722 |                     el.array_chunks::<2>()
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[gadgets::num::Num<F>]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1722 |                     el.into_iter().array_chunks::<2>()
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:937:13
[INFO] [stdout]     |
[INFO] [stdout] 937 |         let A = (0..size).map(|_| <Bls12 as Engine>::G1::rand(rng)).collect::<Vec<_>>();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:938:13
[INFO] [stdout]     |
[INFO] [stdout] 938 |         let B = (0..size).map(|_| <Bls12 as Engine>::G1::rand(rng)).collect::<Vec<_>>();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `C` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:942:13
[INFO] [stdout]     |
[INFO] [stdout] 942 |         let C = (0..size)
[INFO] [stdout]     |             ^ help: convert the identifier to snake case (notice the capitalization): `c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `A` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:965:13
[INFO] [stdout]     |
[INFO] [stdout] 965 |         let A = (0..size).map(|_| <Bls12 as Engine>::G1::rand(rng)).collect::<Vec<_>>();
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `B` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:969:13
[INFO] [stdout]     |
[INFO] [stdout] 969 |         let B = (0..size)
[INFO] [stdout]     |             ^ help: convert the identifier to snake case: `b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bench_Pippenger_with_small_chunk` should have a snake case name
[INFO] [stdout]    --> crates/bellman/src/multiexp.rs:985:8
[INFO] [stdout]     |
[INFO] [stdout] 985 |     fn bench_Pippenger_with_small_chunk() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `bench_pippenger_with_small_chunk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<prime_field_like::NumExtAsFieldWrapper<F, EXT, CS>>` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:1964:64
[INFO] [stdout]      |
[INFO] [stdout] 1964 |                     for (i, [a, b]) in elements_to_interpolate.array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ^^^^^^^^^^^^ `Vec<prime_field_like::NumExtAsFieldWrapper<F, EXT, CS>>` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 1964 |                     for (i, [a, b]) in elements_to_interpolate.into_iter().array_chunks::<2>().enumerate() {
[INFO] [stdout]      |                                                                ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for reference `&[T]` in the current scope
[INFO] [stdout]     --> crates/boojum/src/gadgets/recursion/recursive_verifier.rs:2177:24
[INFO] [stdout]      |
[INFO] [stdout] 2177 |         for src in src.array_chunks::<2>() {
[INFO] [stdout]      |                        ^^^^^^^^^^^^ `&[T]` is not an iterator
[INFO] [stdout]      |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]      |
[INFO] [stdout] 2177 |         for src in src.into_iter().array_chunks::<2>() {
[INFO] [stdout]      |                        ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/round_function.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 |     for (dst, src) in result.iter_mut().zip(u4_pieces.array_chunks::<2>()) {
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^ `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 64]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 64]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/round_function.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |         dst.write(as_u8);
[INFO] [stdout]    |         ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 64]` in the current scope
[INFO] [stdout]    --> crates/boojum/src/gadgets/sha256/round_function.rs:277:33
[INFO] [stdout]     |
[INFO] [stdout] 277 |             .zip(le_4bit_chunks.array_chunks_mut::<8>())
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]    --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks` found for struct `Vec<gadgets::u8::UInt8<F>>` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:66:46
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for (round, input_bytes) in full_message.array_chunks::<SHA256_BLOCK_SIZE>().enumerate() {
[INFO] [stdout]    |                                              ^^^^^^^^^^^^ `Vec<gadgets::u8::UInt8<F>>` is not an iterator
[INFO] [stdout]    |
[INFO] [stdout] help: call `.into_iter()` first
[INFO] [stdout]    |
[INFO] [stdout] 66 |     for (round, input_bytes) in full_message.into_iter().array_chunks::<SHA256_BLOCK_SIZE>().enumerate() {
[INFO] [stdout]    |                                              ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 |             .zip(input_bytes.array_chunks::<4>())
[INFO] [stdout]    |                  ^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:87:10
[INFO] [stdout]    |
[INFO] [stdout] 86 |       for (le_4bit_chunks, dst) in final_4bit_chunks
[INFO] [stdout]    |  __________________________________-
[INFO] [stdout] 87 | |         .array_chunks::<8>()
[INFO] [stdout]    | |         -^^^^^^^^^^^^ `[cs::Variable; 64]` is not an iterator
[INFO] [stdout]    | |_________|
[INFO] [stdout]    |
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `[cs::Variable; 64]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable; 64]: Iterator`
[INFO] [stdout]            `[cs::Variable]: Iterator`
[INFO] [stdout]            which is required by `&mut [cs::Variable]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `array_chunks_mut` found for array `[cs::Variable; 32]` in the current scope
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         .zip(output.array_chunks_mut::<4>())
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: there is a method `rchunks_mut` with a similar name, but with different arguments
[INFO] [stdout]   --> /rustc/9b8307bcb9d1de8ffc7e1c81c48efffdb24ee840/library/core/src/slice/mod.rs:1727:4
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:90:35
[INFO] [stdout]    |
[INFO] [stdout] 90 |         for (dst, [low, high]) in dst.iter_mut().zip(le_4bit_chunks.array_chunks::<2>()) {
[INFO] [stdout]    |                                   ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]   --> crates/boojum/src/gadgets/sha256/mod.rs:90:54
[INFO] [stdout]    |
[INFO] [stdout] 90 |         for (dst, [low, high]) in dst.iter_mut().zip(le_4bit_chunks.array_chunks::<2>()) {
[INFO] [stdout]    |                                                      ^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/traits/selectable.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 |         if let Some(rest) = it.into_remainder() {
[INFO] [stdout]     |                ^^^^^^^^^^   ------------------- this expression has type `std::array::IntoIter<((cs::Variable, cs::Variable), &mut cs::Variable), 4>`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                expected `IntoIter<((Variable, Variable), ...), 4>`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `std::array::IntoIter<((cs::Variable, cs::Variable), &mut cs::Variable), 4>`
[INFO] [stdout]                  found enum `std::option::Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/traits/selectable.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 result_buffer[idx].write(dst);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u16/mod.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u160/mod.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `5`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `5`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u160/mod.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u256/mod.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `8`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `8`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u256/mod.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `8`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:282:54
[INFO] [stdout]     |
[INFO] [stdout] 282 |         for (dst, src) in inner.iter_mut().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             dst.write(UInt32::from_le_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/traits/selectable.rs:125:16
[INFO] [stdout]     |
[INFO] [stdout] 125 |         if let Some(rest) = it.into_remainder() {
[INFO] [stdout]     |                ^^^^^^^^^^   ------------------- this expression has type `std::array::IntoIter<((cs::Variable, cs::Variable), &mut cs::Variable), 4>`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                expected `IntoIter<((Variable, Variable), ...), 4>`, found `Option<_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `std::array::IntoIter<((cs::Variable, cs::Variable), &mut cs::Variable), 4>`
[INFO] [stdout]                  found enum `std::option::Option<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/traits/selectable.rs:137:17
[INFO] [stdout]     |
[INFO] [stdout] 137 |                 result_buffer[idx].write(dst);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:294:60
[INFO] [stdout]     |
[INFO] [stdout] 294 |         for (dst, src) in inner.iter_mut().rev().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:295:13
[INFO] [stdout]     |
[INFO] [stdout] 295 |             dst.write(UInt32::from_be_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u16/mod.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u32/mod.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u160/mod.rs:80:13
[INFO] [stdout]    |
[INFO] [stdout] 80 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `5`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `5`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u160/mod.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `5`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u256/mod.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 85 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `8`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `8`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u256/mod.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `8`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `8`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `16`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `16`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `16`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                found constant `16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:282:54
[INFO] [stdout]     |
[INFO] [stdout] 282 |         for (dst, src) in inner.iter_mut().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:283:13
[INFO] [stdout]     |
[INFO] [stdout] 283 |             dst.write(UInt32::from_le_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:443:54
[INFO] [stdout]     |
[INFO] [stdout] 443 |         for (dst, src) in inner.iter_mut().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:444:13
[INFO] [stdout]     |
[INFO] [stdout] 444 |             dst.write(UInt32::from_le_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:294:60
[INFO] [stdout]     |
[INFO] [stdout] 294 |         for (dst, src) in inner.iter_mut().rev().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 32]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 32]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u256/mod.rs:295:13
[INFO] [stdout]     |
[INFO] [stdout] 295 |             dst.write(UInt32::from_be_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:460:60
[INFO] [stdout]     |
[INFO] [stdout] 460 |         for (dst, src) in inner.iter_mut().rev().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:461:13
[INFO] [stdout]     |
[INFO] [stdout] 461 |             dst.write(UInt32::from_be_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u32/mod.rs:77:9
[INFO] [stdout]    |
[INFO] [stdout] 77 |         [self.variable]
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]               found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         [self.variable]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> crates/boojum/src/gadgets/u512/mod.rs:99:13
[INFO] [stdout]    |
[INFO] [stdout] 99 |             values.map(|el| <u32 as WitnessCastable<F, F>>::cast_from_source(el)),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `16`, found `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected constant `16`
[INFO] [stdout]               found constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |         self.inner.map(|el| el.get_variable())
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `16`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                found constant `16`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:443:54
[INFO] [stdout]     |
[INFO] [stdout] 443 |         for (dst, src) in inner.iter_mut().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:444:13
[INFO] [stdout]     |
[INFO] [stdout] 444 |             dst.write(UInt32::from_le_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:460:60
[INFO] [stdout]     |
[INFO] [stdout] 460 |         for (dst, src) in inner.iter_mut().rev().zip(bytes.array_chunks::<4>()) {
[INFO] [stdout]     |                                                            ^^^^^^^^^^^^ `[gadgets::u8::UInt8<F>; 64]` is not an iterator
[INFO] [stdout]     |
[INFO] [stdout]     = note: the following trait bounds were not satisfied:
[INFO] [stdout]             `[gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>; 64]: Iterator`
[INFO] [stdout]             `[gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout]             which is required by `&mut [gadgets::u8::UInt8<F>]: Iterator`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0282]: type annotations needed
[INFO] [stdout]    --> crates/boojum/src/gadgets/u512/mod.rs:461:13
[INFO] [stdout]     |
[INFO] [stdout] 461 |             dst.write(UInt32::from_be_bytes(cs, *src));
[INFO] [stdout]     |             ^^^ cannot infer type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> crates/boojum/src/gadgets/u8/mod.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 |         [self.variable]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^ expected `Self::INTERNAL_STRUCT_LEN`, found `1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected constant `Self::INTERNAL_STRUCT_LEN`
[INFO] [stdout]                found constant `1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `boojum` (lib) due to 108 previous errors; 59 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0282, E0308, E0599, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0282`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `boojum` (lib test) due to 112 previous errors; 60 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "1b0bc8b3443ad4e2cbf54f45d0b04720b7e062070741c2c78cdc6e6f8ba6ecaf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b0bc8b3443ad4e2cbf54f45d0b04720b7e062070741c2c78cdc6e6f8ba6ecaf", kill_on_drop: false }`
[INFO] [stdout] 1b0bc8b3443ad4e2cbf54f45d0b04720b7e062070741c2c78cdc6e6f8ba6ecaf
