[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] checking brudnevskij/toyplonk against master#08cd08fbef8c6663b052d8d9e4930d5696cbb8a7 for 150662-leaf [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbrudnevskij%2Ftoyplonk" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-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-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/brudnevskij/toyplonk on toolchain 08cd08fbef8c6663b052d8d9e4930d5696cbb8a7 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+08cd08fbef8c6663b052d8d9e4930d5696cbb8a7" "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" "+08cd08fbef8c6663b052d8d9e4930d5696cbb8a7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded sha2 v0.11.0-rc.0 [INFO] [stderr] Downloaded const-oid v0.10.1 [INFO] [stderr] Downloaded hybrid-array v0.3.1 [INFO] [stderr] Downloaded digest v0.11.0-rc.0 [INFO] [stderr] Downloaded block-buffer v0.11.0-rc.4 [INFO] [stderr] Downloaded crypto-common v0.2.0-rc.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+08cd08fbef8c6663b052d8d9e4930d5696cbb8a7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 594b262f6b8279edc95eafb48bc729679162f70824801723124f06aa0c70afd7 [INFO] running `Command { std: "docker" "start" "-a" "594b262f6b8279edc95eafb48bc729679162f70824801723124f06aa0c70afd7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "594b262f6b8279edc95eafb48bc729679162f70824801723124f06aa0c70afd7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "594b262f6b8279edc95eafb48bc729679162f70824801723124f06aa0c70afd7", kill_on_drop: false }` [INFO] [stdout] 594b262f6b8279edc95eafb48bc729679162f70824801723124f06aa0c70afd7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+08cd08fbef8c6663b052d8d9e4930d5696cbb8a7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ad4e9095e5b373ad267d3052364463ce81ca4dc8d3a75a7914190b92b92f6796 [INFO] running `Command { std: "docker" "start" "-a" "ad4e9095e5b373ad267d3052364463ce81ca4dc8d3a75a7914190b92b92f6796", kill_on_drop: false }` [INFO] [stderr] Compiling typenum v1.18.0 [INFO] [stderr] Checking const-oid v0.10.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking ark-std v0.4.0 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking hybrid-array v0.3.1 [INFO] [stderr] Checking crypto-common v0.2.0-rc.3 [INFO] [stderr] Checking block-buffer v0.11.0-rc.4 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking ark-serialize v0.4.2 [INFO] [stderr] Checking digest v0.11.0-rc.0 [INFO] [stderr] Checking sha2 v0.11.0-rc.0 [INFO] [stderr] Compiling ark-ff-macros v0.4.2 [INFO] [stderr] Checking ark-ff v0.4.2 [INFO] [stderr] Checking ark-poly v0.4.2 [INFO] [stderr] Checking ark-ec v0.4.2 [INFO] [stderr] Checking ark-bls12-381 v0.4.0 [INFO] [stderr] Checking 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: 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] [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 `dev` profile [unoptimized + debuginfo] target(s) in 15.23s [INFO] running `Command { std: "docker" "inspect" "ad4e9095e5b373ad267d3052364463ce81ca4dc8d3a75a7914190b92b92f6796", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ad4e9095e5b373ad267d3052364463ce81ca4dc8d3a75a7914190b92b92f6796", kill_on_drop: false }` [INFO] [stdout] ad4e9095e5b373ad267d3052364463ce81ca4dc8d3a75a7914190b92b92f6796