[INFO] cloning repository https://github.com/brudnevskij/toyplonk [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/brudnevskij/toyplonk" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbrudnevskij%2Ftoyplonk", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbrudnevskij%2Ftoyplonk'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 457fbd463b452b41c8417b5ea71933f0daad78f5 [INFO] testing brudnevskij/toyplonk against master#ec6f9a5b4413f74386267ef8efc93712c2ce6db6 for pr-155739-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbrudnevskij%2Ftoyplonk" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/brudnevskij/toyplonk [INFO] finished tweaking git repo https://github.com/brudnevskij/toyplonk [INFO] tweaked toml for git repo https://github.com/brudnevskij/toyplonk written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/brudnevskij/toyplonk on toolchain ec6f9a5b4413f74386267ef8efc93712c2ce6db6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/brudnevskij/toyplonk 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" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded crypto-common v0.2.0-rc.3 [INFO] [stderr] Downloaded digest v0.11.0-rc.0 [INFO] [stderr] Downloaded hybrid-array v0.3.1 [INFO] [stderr] Downloaded const-oid v0.10.1 [INFO] [stderr] Downloaded block-buffer v0.11.0-rc.4 [INFO] [stderr] Downloaded sha2 v0.11.0-rc.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0cf66f523ec05001f563864b8436556fba39bb1fc07b887c4eae67562a48ed85 [INFO] running `Command { std: "docker" "start" "-a" "0cf66f523ec05001f563864b8436556fba39bb1fc07b887c4eae67562a48ed85", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0cf66f523ec05001f563864b8436556fba39bb1fc07b887c4eae67562a48ed85", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0cf66f523ec05001f563864b8436556fba39bb1fc07b887c4eae67562a48ed85", kill_on_drop: false }` [INFO] [stdout] 0cf66f523ec05001f563864b8436556fba39bb1fc07b887c4eae67562a48ed85 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4e8a0082279495f7a5efb137337338e9d95297bd84bc71e143fa4444b738894d [INFO] running `Command { std: "docker" "start" "-a" "4e8a0082279495f7a5efb137337338e9d95297bd84bc71e143fa4444b738894d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling const-oid v0.10.1 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling hybrid-array v0.3.1 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling crypto-common v0.2.0-rc.3 [INFO] [stderr] Compiling block-buffer v0.11.0-rc.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling hashbrown v0.13.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling digest v0.11.0-rc.0 [INFO] [stderr] Compiling sha2 v0.11.0-rc.0 [INFO] [stderr] Compiling ark-std v0.4.0 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling ark-serialize-derive v0.4.2 [INFO] [stderr] Compiling ark-ff-asm v0.4.2 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling ark-ff-macros v0.4.2 [INFO] [stderr] Compiling zeroize v1.8.1 [INFO] [stderr] Compiling ark-serialize v0.4.2 [INFO] [stderr] Compiling ark-ff v0.4.2 [INFO] [stderr] Compiling ark-poly v0.4.2 [INFO] [stderr] Compiling ark-ec v0.4.2 [INFO] [stderr] Compiling ark-bls12-381 v0.4.0 [INFO] [stderr] Compiling toyplonk v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: methods `is_gate_constraint_polynomial_zero_over_h`, `generate_gate_constraint_polynomial`, and `get_gate_constraint_polynomial` are never used [INFO] [stdout] --> src/circuit.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl Circuit { [INFO] [stdout] | ------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn is_gate_constraint_polynomial_zero_over_h( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn generate_gate_constraint_polynomial( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn get_gate_constraint_polynomial(&self) -> DensePolynomial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pad_with_zeroes` is never used [INFO] [stdout] --> src/fft.rs:79:8 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn pad_with_zeroes(coeffs: &[F], domain_size: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `is_satisfied` are never used [INFO] [stdout] --> src/gate.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl Gate { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 13 | pub fn new(q_l: F, q_r: F, q_m: F, q_o: F, q_c: F) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_satisfied(&self, a: F, b: F, c: F) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `verify_permutation_argument` is never used [INFO] [stdout] --> src/permutation.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn verify_permutation_argument( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/prover.rs:47:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct ProverDebugInfo { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 47 | pub linearisation_poly: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub constraint_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | pub permutation_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 52 | pub init_z_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 53 | pub quotient_polynomial: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 54 | pub t_lo: DensePolynomial, [INFO] [stdout] | ^^^^ [INFO] [stdout] 55 | pub t_mid: DensePolynomial, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 56 | pub t_hi: DensePolynomial, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub opening_poly: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 60 | pub opening_omega_poly: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub alpha: E::ScalarField, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 64 | pub beta: E::ScalarField, [INFO] [stdout] | ^^^^ [INFO] [stdout] 65 | pub gamma: E::ScalarField, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 66 | pub zeta: E::ScalarField, [INFO] [stdout] | ^^^^ [INFO] [stdout] 67 | pub v: E::ScalarField, [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub a_poly_blinded: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 71 | pub b_poly_blinded: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 72 | pub c_poly_blinded: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 73 | [INFO] [stdout] 74 | pub selector_polynomials: SelectorPolynomials, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub z: DensePolynomial, [INFO] [stdout] | ^ [INFO] [stdout] 78 | pub sigma_1: DensePolynomial, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 79 | pub sigma_2: DensePolynomial, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 80 | pub sigma_3: DensePolynomial, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 81 | [INFO] [stdout] 82 | pub public_input_poly: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProverDebugInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/permutation.rs:69:43 [INFO] [stdout] | [INFO] [stdout] 69 | let mut h_prime = Vec::from(domain.clone()); // h [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[F]` does not implement `Clone`, so calling `clone` on `&[F]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 30.77s [INFO] running `Command { std: "docker" "inspect" "4e8a0082279495f7a5efb137337338e9d95297bd84bc71e143fa4444b738894d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4e8a0082279495f7a5efb137337338e9d95297bd84bc71e143fa4444b738894d", kill_on_drop: false }` [INFO] [stdout] 4e8a0082279495f7a5efb137337338e9d95297bd84bc71e143fa4444b738894d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 96a366877bd27c66b8d4add4cb1eea80e82b6f06420eba7d348bfde6a6129462 [INFO] running `Command { std: "docker" "start" "-a" "96a366877bd27c66b8d4add4cb1eea80e82b6f06420eba7d348bfde6a6129462", kill_on_drop: false }` [INFO] [stderr] Compiling toyplonk v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ark_bls12_381::Fr` [INFO] [stdout] --> src/gate.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | use ark_bls12_381::Fr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `G1Affine` [INFO] [stdout] --> src/prover.rs:870:40 [INFO] [stdout] | [INFO] [stdout] 870 | use ark_bls12_381::{Bls12_381, Fr, G1Affine, G1Projective, G2Projective}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EvaluationDomain` [INFO] [stdout] --> src/circuit.rs:212:20 [INFO] [stdout] | [INFO] [stdout] 212 | use ark_poly::{EvaluationDomain, Polynomial}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AffineRepr` [INFO] [stdout] --> src/verifier.rs:317:18 [INFO] [stdout] | [INFO] [stdout] 317 | use ark_ec::{AffineRepr, CurveGroup, Group}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/circuit.rs:328:14 [INFO] [stdout] | [INFO] [stdout] 328 | let (t, remainder) = gate_dsp.divide_with_q_and_r(&zh_dsp).unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `padding_index` [INFO] [stdout] --> src/permutation.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let padding_index = domain.len() - 1; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `crs2` [INFO] [stdout] --> src/prover.rs:941:20 [INFO] [stdout] | [INFO] [stdout] 941 | let (crs1, crs2) = dummy_crs::(3); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_crs2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1155:13 [INFO] [stdout] | [INFO] [stdout] 1155 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1293:13 [INFO] [stdout] | [INFO] [stdout] 1293 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1319:13 [INFO] [stdout] | [INFO] [stdout] 1319 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1357:13 [INFO] [stdout] | [INFO] [stdout] 1357 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1373:13 [INFO] [stdout] | [INFO] [stdout] 1373 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1437:13 [INFO] [stdout] | [INFO] [stdout] 1437 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g2` [INFO] [stdout] --> src/prover.rs:1629:13 [INFO] [stdout] | [INFO] [stdout] 1629 | let g2 = G2Projective::generator().into_affine(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/verifier.rs:667:13 [INFO] [stdout] | [INFO] [stdout] 667 | let t = d + g1 * r0; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `constraint_summand`, `permutation_summand`, `init_z_summand`, and `quotient_polynomial` are never read [INFO] [stdout] --> src/prover.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 46 | pub struct ProverDebugInfo { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 50 | pub constraint_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 51 | pub permutation_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 52 | pub init_z_summand: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 53 | pub quotient_polynomial: DensePolynomial, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ProverDebugInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/permutation.rs:69:43 [INFO] [stdout] | [INFO] [stdout] 69 | let mut h_prime = Vec::from(domain.clone()); // h [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `[F]` does not implement `Clone`, so calling `clone` on `&[F]` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.12s [INFO] running `Command { std: "docker" "inspect" "96a366877bd27c66b8d4add4cb1eea80e82b6f06420eba7d348bfde6a6129462", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96a366877bd27c66b8d4add4cb1eea80e82b6f06420eba7d348bfde6a6129462", kill_on_drop: false }` [INFO] [stdout] 96a366877bd27c66b8d4add4cb1eea80e82b6f06420eba7d348bfde6a6129462 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+ec6f9a5b4413f74386267ef8efc93712c2ce6db6" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 17cf3dee9d7b9c1e5c4fbd5d848c8f0ca125dd852c926afe74d26cad59184b64 [INFO] running `Command { std: "docker" "start" "-a" "17cf3dee9d7b9c1e5c4fbd5d848c8f0ca125dd852c926afe74d26cad59184b64", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `ark_bls12_381::Fr` [INFO] [stderr] --> src/gate.rs:72:9 [INFO] [stderr] | [INFO] [stderr] 72 | use ark_bls12_381::Fr; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `G1Affine` [INFO] [stderr] --> src/prover.rs:870:40 [INFO] [stderr] | [INFO] [stderr] 870 | use ark_bls12_381::{Bls12_381, Fr, G1Affine, G1Projective, G2Projective}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `EvaluationDomain` [INFO] [stderr] --> src/circuit.rs:212:20 [INFO] [stderr] | [INFO] [stderr] 212 | use ark_poly::{EvaluationDomain, Polynomial}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `AffineRepr` [INFO] [stderr] --> src/verifier.rs:317:18 [INFO] [stderr] | [INFO] [stderr] 317 | use ark_ec::{AffineRepr, CurveGroup, Group}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/circuit.rs:328:14 [INFO] [stderr] | [INFO] [stderr] 328 | let (t, remainder) = gate_dsp.divide_with_q_and_r(&zh_dsp).unwrap(); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `padding_index` [INFO] [stderr] --> src/permutation.rs:265:13 [INFO] [stderr] | [INFO] [stderr] 265 | let padding_index = domain.len() - 1; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `crs2` [INFO] [stderr] --> src/prover.rs:941:20 [INFO] [stderr] | [INFO] [stderr] 941 | let (crs1, crs2) = dummy_crs::(3); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_crs2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1155:13 [INFO] [stderr] | [INFO] [stderr] 1155 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1293:13 [INFO] [stderr] | [INFO] [stderr] 1293 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1319:13 [INFO] [stderr] | [INFO] [stderr] 1319 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1357:13 [INFO] [stderr] | [INFO] [stderr] 1357 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1373:13 [INFO] [stderr] | [INFO] [stderr] 1373 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1437:13 [INFO] [stderr] | [INFO] [stderr] 1437 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `g2` [INFO] [stderr] --> src/prover.rs:1629:13 [INFO] [stderr] | [INFO] [stderr] 1629 | let g2 = G2Projective::generator().into_affine(); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_g2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `t` [INFO] [stderr] --> src/verifier.rs:667:13 [INFO] [stderr] | [INFO] [stderr] 667 | let t = d + g1 * r0; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stderr] [INFO] [stderr] warning: fields `constraint_summand`, `permutation_summand`, `init_z_summand`, and `quotient_polynomial` are never read [INFO] [stderr] --> src/prover.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 46 | pub struct ProverDebugInfo { [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 50 | pub constraint_summand: DensePolynomial, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 51 | pub permutation_summand: DensePolynomial, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] 52 | pub init_z_summand: DensePolynomial, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 53 | pub quotient_polynomial: DensePolynomial, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ProverDebugInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/permutation.rs:69:43 [INFO] [stderr] | [INFO] [stderr] 69 | let mut h_prime = Vec::from(domain.clone()); // h [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `[F]` does not implement `Clone`, so calling `clone` on `&[F]` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `toyplonk` (bin "toyplonk" test) generated 17 warnings (run `cargo fix --bin "toyplonk" -p toyplonk --tests` to apply 14 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/toyplonk-141dd24ec816b1f1) [INFO] [stdout] [INFO] [stdout] running 34 tests [INFO] [stdout] test circuit::tests::test_gate_constraint_is_zero_when_satisfied ... ok [INFO] [stdout] test circuit::tests::test_gate_constraint_simple_circuit ... ok [INFO] [stdout] test gate::test::test_add_gate_fails_on_wrong_values ... ok [INFO] [stdout] test fft::tests::test_fft_matches_naive_eval ... ok [INFO] [stdout] test circuit::tests::test_sum_and_product_with_two_public_inputs ... ok [INFO] [stdout] test fft::tests::test_ifft_roundtrip ... ok [INFO] [stdout] test fft::tests::test_fft_roundtrip ... ok [INFO] [stdout] test gate::test::test_simple_mul_gate_is_satisfied ... ok [INFO] [stdout] test gate::test::test_simple_addition_gate_is_satisfied ... ok [INFO] [stdout] test permutation::tests::test_generate_sigma_mapping_and_get_sigma_maps ... ok [INFO] [stdout] test gate::test::test_weighted_mul_gate ... ok [INFO] [stdout] test permutation::tests::test_no_wiring ... ok [INFO] [stdout] test permutation::tests::test_get_sigma_polynomials_correctness ... ok [INFO] [stdout] test permutation::tests::test_sigma_maps_match_expected_permutation_cycles ... ok [INFO] [stdout] test permutation::tests::test_rolling_product_failure ... ok [INFO] [stdout] test prover::tests::test_compute_wire_poly_adds_blinding ... ok [INFO] [stdout] test prover::tests::test_split_and_reconstruct_quotient_poly ... ok [INFO] [stdout] test permutation::tests::test_zx_satisfies_recurrence_on_padded_domain ... ok [INFO] [stdout] test prover::tests::test_permutation_argument_rolling_product_validity ... ok [INFO] [stdout] test prover::tests::test_gate_constraint_summand_divides_zh ... ok [INFO] [stdout] test prover::tests::test_commit_polynomial_linear_combination ... ok [INFO] [stdout] test prover::tests::test_init_z_summand_correctness_against_raw_constraint ... ok [INFO] [stdout] test prover::tests::test_permutation_summand_correctness_against_raw_constraint ... ok [INFO] [stdout] test prover::tests::test_init_z_linearisation_summand_matches_expected ... ok [INFO] [stdout] test prover::tests::test_quotient_linearisation_summand_evaluation_matches_expected ... ok [INFO] [stdout] test prover::tests::test_permutation_linearisation_summand_correctness ... ok [INFO] [stdout] test prover::tests::test_constraint_linearisation_summand_correctness ... ok [INFO] [stdout] test prover::tests::test_quotient_summands_over_linearisations ... ok [INFO] [stdout] test prover::tests::test_linearisation_polynomial ... ok [INFO] [stdout] test prover::tests::test_opening_polynomial_reconstruction ... ok [INFO] [stdout] test prover::tests::test_opening_polynomial_omega ... ok [INFO] [stdout] test verifier::test::test_permutation_commitment_reconstruction ... ok [INFO] [stdout] test verifier::test::test_sum_and_product_with_two_public_inputs ... ok [INFO] [stdout] test verifier::test::test_lineariasation_reconstruction ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 34 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.09s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "17cf3dee9d7b9c1e5c4fbd5d848c8f0ca125dd852c926afe74d26cad59184b64", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "17cf3dee9d7b9c1e5c4fbd5d848c8f0ca125dd852c926afe74d26cad59184b64", kill_on_drop: false }` [INFO] [stdout] 17cf3dee9d7b9c1e5c4fbd5d848c8f0ca125dd852c926afe74d26cad59184b64