halo2_poseidon: Refactor code so it compiles in its new crate #977
Annotations
5 errors and 172 warnings
missing documentation for a method:
halo2_gadgets/src/utilities/lookup_range_check.rs#L158
error: missing documentation for a method
--> halo2_gadgets/src/utilities/lookup_range_check.rs:158:5
|
158 | pub fn load(&self, layouter: &mut impl Layouter<F>) -> Result<(), Error> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
missing documentation for a module:
halo2_gadgets/src/sinsemilla/merkle.rs#L174
error: missing documentation for a module
--> halo2_gadgets/src/sinsemilla/merkle.rs:174:1
|
174 | pub mod tests {
| ^^^^^^^^^^^^^
|
note: the lint level is defined here
--> halo2_gadgets/src/lib.rs:21:9
|
21 | #![deny(missing_docs)]
| ^^^^^^^^^^^^
|
Clippy (beta)
Clippy had exited with the 101 exit code
|
this returns a `Result<_, ()>`:
halo2_poseidon/src/lib.rs#L256
error: this returns a `Result<_, ()>`
--> halo2_poseidon/src/lib.rs:256:5
|
256 | pub fn squeeze(&mut self) -> Result<F, ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `-D clippy::result-unit-err` implied by `-D warnings`
= help: use a custom `Error` type instead
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err
|
this returns a `Result<_, ()>`:
halo2_poseidon/src/lib.rs#L256
error: this returns a `Result<_, ()>`
--> halo2_poseidon/src/lib.rs:256:5
|
256 | pub fn squeeze(&mut self) -> Result<F, ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `-D clippy::result-unit-err` implied by `-D warnings`
= help: use a custom `Error` type instead
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err
|
an array of `Range` that is only one element:
halo2_gadgets/src/utilities.rs#L407
warning: an array of `Range` that is only one element
--> halo2_gadgets/src/utilities.rs:407:47
|
407 | decompose(pallas::Base::random(rng), &[0..255]);
| ^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_range_in_vec_init
= note: `-W clippy::single-range-in-vec-init` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::single_range_in_vec_init)]`
help: if you wanted a `Vec` that contains the entire range, try
|
407 | decompose(pallas::Base::random(rng), &(0..255).collect::<std::vec::Vec<usize>>());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
help: if you wanted an array of len 255, try
|
407 | decompose(pallas::Base::random(rng), &[0; 255]);
| ~~~~~~
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L127
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:127:34
|
127 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L118
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:118:34
|
118 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L103
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:103:34
|
103 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities/lookup_range_check.rs#L52
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities/lookup_range_check.rs:52:38
|
52 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_gadgets/src/sinsemilla.rs#L660
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_gadgets/src/sinsemilla.rs:660:48
|
660 | ... .chain(right.into_iter()),
| ^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `right`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_gadgets/src/sinsemilla.rs#L659
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_gadgets/src/sinsemilla.rs:659:48
|
659 | ... .chain(left.into_iter())
| ^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `left`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
= note: `-W clippy::useless-conversion` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_proofs/src/dev.rs#L1066
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_proofs/src/dev.rs:1066:30
|
1066 | ... .fold(Ok(()), |acc, res| acc.and(res))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `try_fold` instead: `try_fold((), |acc, res| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
= note: `-W clippy::manual-try-fold` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::manual_try_fold)]`
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L683
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:683:41
|
683 | / ... &util::load_instance(
684 | | ... n,
685 | | ... row,
686 | | ... &self.cs.instance_queries,
687 | | ... &self.instance,
688 | | ... ),
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
help: change this to
|
683 ~ util::load_instance(
684 + n,
685 + row,
686 + &self.cs.instance_queries,
687 + &self.instance,
688 ~ ),
|
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L682
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:682:41
|
682 | ... &util::load(n, row, &self.cs.advice_queries, &self.advice),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `util::load(n, row, &self.cs.advice_queries, &self.advice)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L681
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:681:41
|
681 | ... &util::load(n, row, &self.cs.fixed_queries, &self.fixed),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `util::load(n, row, &self.cs.fixed_queries, &self.fixed)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the following explicit lifetimes could be elided: 'cs:
halo2_proofs/src/dev/tfp.rs#L352
warning: the following explicit lifetimes could be elided: 'cs
--> halo2_proofs/src/dev/tfp.rs:352:6
|
352 | impl<'cs, F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'cs, F, CS> {
| ^^^ ^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
352 - impl<'cs, F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'cs, F, CS> {
352 + impl<F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'_, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/dev/tfp.rs#L225
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/dev/tfp.rs:225:6
|
225 | impl<'r, F: Field> RegionLayouter<F> for TracingRegion<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
225 - impl<'r, F: Field> RegionLayouter<F> for TracingRegion<'r, F> {
225 + impl<F: Field> RegionLayouter<F> for TracingRegion<'_, F> {
|
|
the following explicit lifetimes could be elided: 'c:
halo2_proofs/src/dev/tfp.rs#L121
warning: the following explicit lifetimes could be elided: 'c
--> halo2_proofs/src/dev/tfp.rs:121:6
|
121 | impl<'c, F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'c, F, C> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
121 - impl<'c, F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'c, F, C> {
121 + impl<F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'_, F, C> {
|
|
the borrowed expression implements the required traits:
halo2_gadgets/benches/poseidon.rs#L127
warning: the borrowed expression implements the required traits
--> halo2_gadgets/benches/poseidon.rs:127:25
|
127 | val.pow_vartime(&[5])
| ^^^^ help: change this to: `[5]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L414
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:414:33
|
414 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L371
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:371:33
|
371 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L328
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:328:33
|
328 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly.rs#L174
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly.rs:174:22
|
174 | .zip(inv_denoms.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `inv_denoms`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L280
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:280:10
|
280 | ) -> Constraints<
| __________^
281 | | F,
282 | | (&'static str, Expression<F>),
283 | | impl Iterator<Item = (&'static str, Expression<F>)>,
284 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
this bound is already specified as the supertrait of `ExactSizeIterator`:
halo2_proofs/src/poly.rs#L167
warning: this bound is already specified as the supertrait of `ExactSizeIterator`
--> halo2_proofs/src/poly.rs:167:26
|
167 | inv_denoms: impl Iterator<Item = F> + ExactSizeIterator,
| ^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implied_bounds_in_impls
= note: `-W clippy::implied-bounds-in-impls` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::implied_bounds_in_impls)]`
help: try removing this bound
|
167 - inv_denoms: impl Iterator<Item = F> + ExactSizeIterator,
167 + inv_denoms: impl ExactSizeIterator<Item = F>,
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly.rs#L159
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly.rs:159:14
|
159 | .zip(assigned_denominators.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `assigned_denominators`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L105
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:105:10
|
105 | ) -> Constraints<
| __________^
106 | | F,
107 | | (&'static str, Expression<F>),
108 | | impl Iterator<Item = (&'static str, Expression<F>)>,
109 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L37
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:37:10
|
37 | ) -> Constraints<
| __________^
38 | | F,
39 | | (&'static str, Expression<F>),
40 | | impl Iterator<Item = (&'static str, Expression<F>)>,
41 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
= note: `-W clippy::type-complexity` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::type_complexity)]`
|
use of `default` to create a unit struct:
halo2_gadgets/src/poseidon.rs#L198
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/poseidon.rs:198:33
|
198 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/poseidon.rs#L152
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/poseidon.rs:152:33
|
152 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/poly/multiopen/prover.rs#L125
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/poly/multiopen/prover.rs:125:6
|
125 | impl<'a, C: CurveAffine> PartialEq for PolynomialPointer<'a, C> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
125 - impl<'a, C: CurveAffine> PartialEq for PolynomialPointer<'a, C> {
125 + impl<C: CurveAffine> PartialEq for PolynomialPointer<'_, C> {
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly/multiopen/prover.rs#L105
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly/multiopen/prover.rs:105:58
|
105 | let (p_poly, p_poly_blind) = q_polys.into_iter().zip(q_blinds.into_iter()).fold(
| ^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `q_blinds`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L517
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:517:77
|
517 | let r_0 = (p[0] + config.round_constants[round + 1][0]).pow(&config.alpha);
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L477
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:477:73
|
477 | let r_0 = (p[0] + config.round_constants[round][0]).pow(&config.alpha);
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L451
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:451:62
|
451 | let r: Value<Vec<F>> = q.map(|q| q.map(|q| q.pow(&config.alpha))).collect();
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable:
halo2_gadgets/src/poseidon/pow5.rs#L403
warning: called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable
--> halo2_gadgets/src/poseidon/pow5.rs:403:33
|
403 | let vals = state[..RATE].iter().cloned().collect::<Vec<_>>();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.to_vec()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect
= note: `-W clippy::iter-cloned-collect` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::iter_cloned_collect)]`
|
this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array`:
halo2_gadgets/src/poseidon/pow5.rs#L372
warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array`
--> halo2_gadgets/src/poseidon/pow5.rs:372:22
|
372 | .into_iter()
| ^^^^^^^^^ help: call directly: `iter`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref
= note: `-W clippy::into-iter-on-ref` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::into_iter_on_ref)]`
|
using `clone` on type `Value<F>` which implements the `Copy` trait:
halo2_gadgets/src/poseidon/pow5.rs#L353
warning: using `clone` on type `Value<F>` which implements the `Copy` trait
--> halo2_gadgets/src/poseidon/pow5.rs:353:40
|
353 | ... || value.clone(),
| ^^^^^^^^^^^^^ help: try removing the `clone` call: `value`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
|
use of `default` to create a unit struct:
halo2_proofs/src/poly/evaluator.rs#L124
warning: use of `default` to create a unit struct
--> halo2_proofs/src/poly/evaluator.rs:124:36
|
124 | _evaluator: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/poly/evaluator.rs#L78
warning: use of `default` to create a unit struct
--> halo2_proofs/src/poly/evaluator.rs:78:36
|
78 | _evaluator: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
using `clone` on type `F` which implements the `Copy` trait:
halo2_gadgets/src/poseidon/pow5.rs#L347
warning: using `clone` on type `F` which implements the `Copy` trait
--> halo2_gadgets/src/poseidon/pow5.rs:347:54
|
347 | ... let value = Value::known(padding_value.clone());
| ^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*padding_value`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
= note: `-W clippy::clone-on-copy` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::clone_on_copy)]`
|
the borrowed expression implements the required traits:
halo2_proofs/src/poly/domain.rs#L559
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/poly/domain.rs:559:20
|
559 | let xn = x.pow(&[8, 0, 0, 0]);
| ^^^^^^^^^^^^^ help: change this to: `[8, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_proofs/src/poly/domain.rs#L549
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/poly/domain.rs:549:38
|
549 | points.push(domain.omega.pow(&[i, 0, 0, 0]));
| ^^^^^^^^^^^^^ help: change this to: `[i, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L256
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:256:58
|
256 | let state = (0..config.half_full_rounds).fold(Ok(state), |res, r| {
| __________________________________________________________^
257 | | res.and_then(|state| {
258 | | state.full_round(
259 | | &mut region,
... |
264 | | })
265 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L245
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:245:61
|
245 | let state = (0..config.half_partial_rounds).fold(Ok(state), |res, r| {
| _____________________________________________________________^
246 | | res.and_then(|state| {
247 | | state.partial_round(
248 | | &mut region,
... |
253 | | })
254 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L241
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:241:58
|
241 | let state = (0..config.half_full_rounds).fold(Ok(state), |res, r| {
| __________________________________________________________^
242 | | res.and_then(|state| state.full_round(&mut region, config, r, r))
243 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
= note: `-W clippy::manual-try-fold` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::manual_try_fold)]`
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L127
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:127:34
|
127 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L118
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:118:34
|
118 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities.rs#L103
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities.rs:103:34
|
103 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L395
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:395:42
|
395 | .map(|k| k * (*H_SCALAR).pow(&[(NUM_WINDOWS - 1) as u64, 0, 0, 0]) - offset_acc);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(NUM_WINDOWS - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L390
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:390:37
|
390 | acc + (*TWO_SCALAR).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L373
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:373:68
|
373 | let scalar = k.map(|k| (k + *TWO_SCALAR) * (*H_SCALAR).pow(&[w as u64, 0, 0, 0]));
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[w as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/verifier.rs#L319
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/verifier.rs:319:25
|
319 | / lookups
320 | | .iter()
321 | | .flat_map(move |p| p.queries(vk, x))
322 | | .into_iter(),
| |________________________________________^
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
help: consider removing the `.into_iter()`
|
319 ~ lookups
320 + .iter()
321 ~ .flat_map(move |p| p.queries(vk, x)),
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/verifier.rs#L259
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/verifier.rs:259:25
|
259 | / lookups
260 | | .iter()
261 | | .zip(vk.cs.lookups.iter())
262 | | .flat_map(move |(p, argument)| {
... |
275 | | })
276 | | .into_iter(),
| |________________________________________^
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
help: consider removing the `.into_iter()`
|
259 ~ lookups
260 + .iter()
261 + .zip(vk.cs.lookups.iter())
262 + .flat_map(move |(p, argument)| {
263 + p.expressions(
264 + l_0,
265 + l_last,
266 + l_blind,
267 + argument,
268 + theta,
269 + beta,
270 + gamma,
271 + advice_evals,
272 + fixed_evals,
273 + instance_evals,
274 + )
275 ~ }),
|
|
the borrowed expression implements the required traits:
halo2_proofs/src/plonk/verifier.rs#L206
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/plonk/verifier.rs:206:24
|
206 | let xn = x.pow(&[params.n, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[params.n, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
use of `default` to create a unit struct:
halo2_gadgets/src/utilities/lookup_range_check.rs#L52
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/utilities/lookup_range_check.rs:52:38
|
52 | _phantom: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L707
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:707:24
|
707 | .chain(lookups.iter().flat_map(move |p| p.open(pk, x)).into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `lookups.iter().flat_map(move |p| p.open(pk, x))`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the borrowed expression implements the required traits:
halo2_proofs/src/plonk/prover.rs#L599
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/plonk/prover.rs:599:20
|
599 | let xn = x.pow(&[params.n, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[params.n, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L581
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:581:28
|
581 | .chain(permutation_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `permutation_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L547
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:547:14
|
547 | .zip(lookup_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `lookup_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L546
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:546:14
|
546 | .zip(permutation_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `permutation_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/plonk/prover.rs#L147
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/plonk/prover.rs:147:18
|
147 | impl<'a, F: Field> Assignment<F> for WitnessCollection<'a, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
147 - impl<'a, F: Field> Assignment<F> for WitnessCollection<'a, F> {
147 + impl<F: Field> Assignment<F> for WitnessCollection<'_, F> {
|
|
doc list item without indentation:
halo2_proofs/src/plonk/lookup/prover.rs#L562
warning: doc list item without indentation
--> halo2_proofs/src/plonk/lookup/prover.rs:562:5
|
562 | /// This method returns (A', S') if no errors are encountered.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
help: indent this line
|
562 | /// This method returns (A', S') if no errors are encountered.
| ++
|
doc list item without indentation:
halo2_proofs/src/plonk/lookup/prover.rs#L74
warning: doc list item without indentation
--> halo2_proofs/src/plonk/lookup/prover.rs:74:9
|
74 | /// The Permuted<C> struct is used to update the Lookup, and is then returned.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
= note: `-W clippy::doc-lazy-continuation` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::doc_lazy_continuation)]`
help: indent this line
|
74 | /// The Permuted<C> struct is used to update the Lookup, and is then returned.
| ++
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/circuit.rs#L1261
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/circuit.rs:1261:22
|
1261 | .zip(degrees.into_iter())
| ^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `degrees`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/plonk/circuit.rs#L988
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/plonk/circuit.rs:988:6
|
988 | impl<'a, F: Field> std::fmt::Debug for PinnedGates<'a, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
988 - impl<'a, F: Field> std::fmt::Debug for PinnedGates<'a, F> {
988 + impl<F: Field> std::fmt::Debug for PinnedGates<'_, F> {
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/circuit.rs#L893
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/circuit.rs:893:18
|
893 | .zip(self.constraints.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `self.constraints`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
= note: `-W clippy::useless-conversion` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L220
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:220:45
|
220 | * C::Scalar::from(H as u64).pow(&[(num_windows - 1) as u64, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(num_windows - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L217
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:217:42
|
217 | acc + C::Scalar::from(2).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L200
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:200:53
|
200 | * C::Scalar::from(H as u64).pow(&[idx as u64, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[idx as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
doc list item without indentation:
halo2_gadgets/src/ecc/chip/constants.rs#L111
warning: doc list item without indentation
--> halo2_gadgets/src/ecc/chip/constants.rs:111:5
|
111 | /// If successful, return a vector of `(z: u64, us: [C::Base; H])` for each window.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
= note: `-W clippy::doc-lazy-continuation` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::doc_lazy_continuation)]`
help: indent this line
|
111 | /// If successful, return a vector of `(z: u64, us: [C::Base; H])` for each window.
| ++
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L72
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:72:53
|
72 | * C::Scalar::from(H as u64).pow(&[(num_windows - 1) as u64, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(num_windows - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L65
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:65:38
|
65 | acc + C::Scalar::from(2).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * j as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * j as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L52
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:52:57
|
52 | * C::Scalar::from(H as u64).pow(&[w as u64, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[w as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit.rs#L380
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit.rs:380:6
|
380 | impl<'r, F: Field> Table<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
380 - impl<'r, F: Field> Table<'r, F> {
380 + impl<F: Field> Table<'_, F> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit.rs#L191
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit.rs:191:6
|
191 | impl<'r, F: Field> Region<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
191 - impl<'r, F: Field> Region<'r, F> {
191 + impl<F: Field> Region<'_, F> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/table_layouter.rs#L67
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/table_layouter.rs:67:6
|
67 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> TableLayouter<F>
| ^^
68 | for SimpleTableLayouter<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
67 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> TableLayouter<F>
68 ~ for SimpleTableLayouter<'_, 'a, F, CS>
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/table_layouter.rs#L48
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/table_layouter.rs:48:6
|
48 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
48 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'r, 'a, F, CS> {
48 + impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/v1.rs#L363
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/v1.rs:363:6
|
363 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
363 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'r, 'a, F, CS> {
363 + impl<'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/v1.rs#L348
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/v1.rs:348:6
|
348 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
348 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'r, 'a, F, CS> {
348 + impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'p:
halo2_proofs/src/circuit/floor_planner/v1.rs#L163
warning: the following explicit lifetimes could be elided: 'p
--> halo2_proofs/src/circuit/floor_planner/v1.rs:163:6
|
163 | impl<'p, 'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'p, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
163 - impl<'p, 'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'p, 'a, F, CS> {
163 + impl<'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/single_pass.rs#L246
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/single_pass.rs:246:6
|
246 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F>
| ^^
247 | for SingleChipLayouterRegion<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
246 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F>
247 ~ for SingleChipLayouterRegion<'_, 'a, F, CS>
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/single_pass.rs#L225
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/single_pass.rs:225:6
|
225 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug
| ^^
226 | for SingleChipLayouterRegion<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
= note: `-W clippy::needless-lifetimes` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]`
help: elide the lifetimes
|
225 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug
226 ~ for SingleChipLayouterRegion<'_, 'a, F, CS>
|
|
struct `PointIndex` is never constructed:
halo2_proofs/src/plonk/circuit.rs#L769
warning: struct `PointIndex` is never constructed
--> halo2_proofs/src/plonk/circuit.rs:769:19
|
769 | pub(crate) struct PointIndex(pub usize);
| ^^^^^^^^^^
|
trait `IndexedParallelIterator` is never used:
halo2_proofs/src/multicore.rs#L28
warning: trait `IndexedParallelIterator` is never used
--> halo2_proofs/src/multicore.rs:28:11
|
28 | pub trait IndexedParallelIterator: std::iter::Iterator {}
| ^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L280
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:280:10
|
280 | ) -> Constraints<
| __________^
281 | | F,
282 | | (&'static str, Expression<F>),
283 | | impl Iterator<Item = (&'static str, Expression<F>)>,
284 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L105
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:105:10
|
105 | ) -> Constraints<
| __________^
106 | | F,
107 | | (&'static str, Expression<F>),
108 | | impl Iterator<Item = (&'static str, Expression<F>)>,
109 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
very complex type used. Consider factoring parts into `type` definitions:
halo2_gadgets/src/sha256/table16/compression/compression_gates.rs#L37
warning: very complex type used. Consider factoring parts into `type` definitions
--> halo2_gadgets/src/sha256/table16/compression/compression_gates.rs:37:10
|
37 | ) -> Constraints<
| __________^
38 | | F,
39 | | (&'static str, Expression<F>),
40 | | impl Iterator<Item = (&'static str, Expression<F>)>,
41 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
= note: `-W clippy::type-complexity` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::type_complexity)]`
|
use of `default` to create a unit struct:
halo2_gadgets/src/poseidon.rs#L198
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/poseidon.rs:198:33
|
198 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_gadgets/src/poseidon.rs#L152
warning: use of `default` to create a unit struct
--> halo2_gadgets/src/poseidon.rs:152:33
|
152 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L517
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:517:77
|
517 | let r_0 = (p[0] + config.round_constants[round + 1][0]).pow(&config.alpha);
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L477
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:477:73
|
477 | let r_0 = (p[0] + config.round_constants[round][0]).pow(&config.alpha);
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/poseidon/pow5.rs#L451
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/poseidon/pow5.rs:451:62
|
451 | let r: Value<Vec<F>> = q.map(|q| q.map(|q| q.pow(&config.alpha))).collect();
| ^^^^^^^^^^^^^ help: change this to: `config.alpha`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable:
halo2_gadgets/src/poseidon/pow5.rs#L403
warning: called `iter().cloned().collect()` on a slice to create a `Vec`. Calling `to_vec()` is both faster and more readable
--> halo2_gadgets/src/poseidon/pow5.rs:403:33
|
403 | let vals = state[..RATE].iter().cloned().collect::<Vec<_>>();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `.to_vec()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_cloned_collect
= note: `-W clippy::iter-cloned-collect` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::iter_cloned_collect)]`
|
this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array`:
halo2_gadgets/src/poseidon/pow5.rs#L372
warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `array`
--> halo2_gadgets/src/poseidon/pow5.rs:372:22
|
372 | .into_iter()
| ^^^^^^^^^ help: call directly: `iter`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref
= note: `-W clippy::into-iter-on-ref` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::into_iter_on_ref)]`
|
using `clone` on type `Value<F>` which implements the `Copy` trait:
halo2_gadgets/src/poseidon/pow5.rs#L353
warning: using `clone` on type `Value<F>` which implements the `Copy` trait
--> halo2_gadgets/src/poseidon/pow5.rs:353:40
|
353 | ... || value.clone(),
| ^^^^^^^^^^^^^ help: try removing the `clone` call: `value`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
|
using `clone` on type `F` which implements the `Copy` trait:
halo2_gadgets/src/poseidon/pow5.rs#L347
warning: using `clone` on type `F` which implements the `Copy` trait
--> halo2_gadgets/src/poseidon/pow5.rs:347:54
|
347 | ... let value = Value::known(padding_value.clone());
| ^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*padding_value`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
= note: `-W clippy::clone-on-copy` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::clone_on_copy)]`
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L256
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:256:58
|
256 | let state = (0..config.half_full_rounds).fold(Ok(state), |res, r| {
| __________________________________________________________^
257 | | res.and_then(|state| {
258 | | state.full_round(
259 | | &mut region,
... |
264 | | })
265 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L245
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:245:61
|
245 | let state = (0..config.half_partial_rounds).fold(Ok(state), |res, r| {
| _____________________________________________________________^
246 | | res.and_then(|state| {
247 | | state.partial_round(
248 | | &mut region,
... |
253 | | })
254 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
|
usage of `Iterator::fold` on a type that implements `Try`:
halo2_gadgets/src/poseidon/pow5.rs#L241
warning: usage of `Iterator::fold` on a type that implements `Try`
--> halo2_gadgets/src/poseidon/pow5.rs:241:58
|
241 | let state = (0..config.half_full_rounds).fold(Ok(state), |res, r| {
| __________________________________________________________^
242 | | res.and_then(|state| state.full_round(&mut region, config, r, r))
243 | | })?;
| |__________________^ help: use `try_fold` instead: `try_fold(state, |res, r| ...)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
= note: `-W clippy::manual-try-fold` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::manual_try_fold)]`
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L395
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:395:42
|
395 | .map(|k| k * (*H_SCALAR).pow(&[(NUM_WINDOWS - 1) as u64, 0, 0, 0]) - offset_acc);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(NUM_WINDOWS - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L390
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:390:37
|
390 | acc + (*TWO_SCALAR).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/mul_fixed.rs#L373
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/mul_fixed.rs:373:68
|
373 | let scalar = k.map(|k| (k + *TWO_SCALAR) * (*H_SCALAR).pow(&[w as u64, 0, 0, 0]));
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[w as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L220
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:220:45
|
220 | * C::Scalar::from(H as u64).pow(&[(num_windows - 1) as u64, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(num_windows - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L217
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:217:42
|
217 | acc + C::Scalar::from(2).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * w as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L200
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:200:53
|
200 | * C::Scalar::from(H as u64).pow(&[idx as u64, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[idx as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
doc list item without indentation:
halo2_gadgets/src/ecc/chip/constants.rs#L111
warning: doc list item without indentation
--> halo2_gadgets/src/ecc/chip/constants.rs:111:5
|
111 | /// If successful, return a vector of `(z: u64, us: [C::Base; H])` for each window.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
= note: `-W clippy::doc-lazy-continuation` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::doc_lazy_continuation)]`
help: indent this line
|
111 | /// If successful, return a vector of `(z: u64, us: [C::Base; H])` for each window.
| ++
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L72
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:72:53
|
72 | * C::Scalar::from(H as u64).pow(&[(num_windows - 1) as u64, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[(num_windows - 1) as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L65
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:65:38
|
65 | acc + C::Scalar::from(2).pow(&[FIXED_BASE_WINDOW_SIZE as u64 * j as u64 + 1, 0, 0, 0])
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `[FIXED_BASE_WINDOW_SIZE as u64 * j as u64 + 1, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_gadgets/src/ecc/chip/constants.rs#L52
warning: the borrowed expression implements the required traits
--> halo2_gadgets/src/ecc/chip/constants.rs:52:57
|
52 | * C::Scalar::from(H as u64).pow(&[w as u64, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[w as u64, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L441
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:441:33
|
441 | _domain: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L335
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:335:33
|
335 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L298
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:298:33
|
298 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
this returns a `Result<_, ()>`:
halo2_poseidon/src/lib.rs#L256
warning: this returns a `Result<_, ()>`
--> halo2_poseidon/src/lib.rs:256:5
|
256 | pub fn squeeze(&mut self) -> Result<F, ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: use a custom `Error` type instead
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err
= note: `-W clippy::result-unit-err` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::result_unit_err)]`
|
use of `default` to create a unit struct:
halo2_poseidon/src/p128pow5t3.rs#L86
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/p128pow5t3.rs:86:38
|
86 | P128Pow5T3Gen(PhantomData::default())
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_poseidon/src/grain.rs#L72
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/grain.rs:72:32
|
72 | _field: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L109
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:109:13
|
109 | /// Selector assignments used for optimization pass
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
110 | selectors: vec![vec![false; n]; num_selectors],
| ---------------------------------------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L107
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:107:13
|
107 | /// Pairs of cells between which we have equality constraints.
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
108 | equality: vec![],
| ---------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L105
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:105:13
|
105 | /// Any cells assigned outside of a region.
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
106 | loose_cells: vec![],
| ------------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
= note: `#[warn(unused_doc_comments)]` on by default
|
unused imports: `ParallelIterator` and `Scope`:
halo2_proofs/src/multicore.rs#L15
warning: unused imports: `ParallelIterator` and `Scope`
--> halo2_proofs/src/multicore.rs:15:34
|
15 | iter::{IntoParallelIterator, ParallelIterator},
| ^^^^^^^^^^^^^^^^
16 | join, scope, Scope,
| ^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
struct `Variable` is never constructed:
halo2_proofs/tests/plonk_api.rs#L26
warning: struct `Variable` is never constructed
--> halo2_proofs/tests/plonk_api.rs:26:16
|
26 | pub struct Variable(Column<Advice>, usize);
| ^^^^^^^^
|
= note: `Variable` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
= note: `#[warn(dead_code)]` on by default
|
struct `Variable` is never constructed:
halo2_proofs/benches/plonk.rs#L19
warning: struct `Variable` is never constructed
--> halo2_proofs/benches/plonk.rs:19:16
|
19 | pub struct Variable(Column<Advice>, usize);
| ^^^^^^^^
|
= note: `Variable` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
= note: `#[warn(dead_code)]` on by default
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L441
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:441:33
|
441 | _domain: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L335
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:335:33
|
335 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_poseidon/src/lib.rs#L298
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/lib.rs:298:33
|
298 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
this returns a `Result<_, ()>`:
halo2_poseidon/src/lib.rs#L256
warning: this returns a `Result<_, ()>`
--> halo2_poseidon/src/lib.rs:256:5
|
256 | pub fn squeeze(&mut self) -> Result<F, ()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: use a custom `Error` type instead
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_unit_err
= note: `-W clippy::result-unit-err` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::result_unit_err)]`
|
use of `default` to create a unit struct:
halo2_poseidon/src/grain.rs#L72
warning: use of `default` to create a unit struct
--> halo2_poseidon/src/grain.rs:72:32
|
72 | _field: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L683
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:683:41
|
683 | / ... &util::load_instance(
684 | | ... n,
685 | | ... row,
686 | | ... &self.cs.instance_queries,
687 | | ... &self.instance,
688 | | ... ),
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
help: change this to
|
683 ~ util::load_instance(
684 + n,
685 + row,
686 + &self.cs.instance_queries,
687 + &self.instance,
688 ~ ),
|
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L682
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:682:41
|
682 | ... &util::load(n, row, &self.cs.advice_queries, &self.advice),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `util::load(n, row, &self.cs.advice_queries, &self.advice)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the borrowed expression implements the required traits:
halo2_proofs/src/dev.rs#L681
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/dev.rs:681:41
|
681 | ... &util::load(n, row, &self.cs.fixed_queries, &self.fixed),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `util::load(n, row, &self.cs.fixed_queries, &self.fixed)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
the following explicit lifetimes could be elided: 'cs:
halo2_proofs/src/dev/tfp.rs#L352
warning: the following explicit lifetimes could be elided: 'cs
--> halo2_proofs/src/dev/tfp.rs:352:6
|
352 | impl<'cs, F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'cs, F, CS> {
| ^^^ ^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
352 - impl<'cs, F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'cs, F, CS> {
352 + impl<F: Field, CS: Assignment<F>> Assignment<F> for TracingAssignment<'_, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/dev/tfp.rs#L225
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/dev/tfp.rs:225:6
|
225 | impl<'r, F: Field> RegionLayouter<F> for TracingRegion<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
225 - impl<'r, F: Field> RegionLayouter<F> for TracingRegion<'r, F> {
225 + impl<F: Field> RegionLayouter<F> for TracingRegion<'_, F> {
|
|
the following explicit lifetimes could be elided: 'c:
halo2_proofs/src/dev/tfp.rs#L121
warning: the following explicit lifetimes could be elided: 'c
--> halo2_proofs/src/dev/tfp.rs:121:6
|
121 | impl<'c, F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'c, F, C> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
121 - impl<'c, F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'c, F, C> {
121 + impl<F: Field, C: Circuit<F>> Circuit<F> for TracingCircuit<'_, F, C> {
|
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L414
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:414:33
|
414 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L371
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:371:33
|
371 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/dev/cost.rs#L328
warning: use of `default` to create a unit struct
--> halo2_proofs/src/dev/cost.rs:328:33
|
328 | _marker: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly.rs#L174
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly.rs:174:22
|
174 | .zip(inv_denoms.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `inv_denoms`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
this bound is already specified as the supertrait of `ExactSizeIterator`:
halo2_proofs/src/poly.rs#L167
warning: this bound is already specified as the supertrait of `ExactSizeIterator`
--> halo2_proofs/src/poly.rs:167:26
|
167 | inv_denoms: impl Iterator<Item = F> + ExactSizeIterator,
| ^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implied_bounds_in_impls
= note: `-W clippy::implied-bounds-in-impls` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::implied_bounds_in_impls)]`
help: try removing this bound
|
167 - inv_denoms: impl Iterator<Item = F> + ExactSizeIterator,
167 + inv_denoms: impl ExactSizeIterator<Item = F>,
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly.rs#L159
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly.rs:159:14
|
159 | .zip(assigned_denominators.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `assigned_denominators`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/poly/multiopen/prover.rs#L125
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/poly/multiopen/prover.rs:125:6
|
125 | impl<'a, C: CurveAffine> PartialEq for PolynomialPointer<'a, C> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
125 - impl<'a, C: CurveAffine> PartialEq for PolynomialPointer<'a, C> {
125 + impl<C: CurveAffine> PartialEq for PolynomialPointer<'_, C> {
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/poly/multiopen/prover.rs#L105
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/poly/multiopen/prover.rs:105:58
|
105 | let (p_poly, p_poly_blind) = q_polys.into_iter().zip(q_blinds.into_iter()).fold(
| ^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `q_blinds`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
use of `default` to create a unit struct:
halo2_proofs/src/poly/evaluator.rs#L124
warning: use of `default` to create a unit struct
--> halo2_proofs/src/poly/evaluator.rs:124:36
|
124 | _evaluator: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
|
use of `default` to create a unit struct:
halo2_proofs/src/poly/evaluator.rs#L78
warning: use of `default` to create a unit struct
--> halo2_proofs/src/poly/evaluator.rs:78:36
|
78 | _evaluator: PhantomData::default(),
| ^^^^^^^^^^^ help: remove this call to `default`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs
= note: `-W clippy::default-constructed-unit-structs` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::default_constructed_unit_structs)]`
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/verifier.rs#L319
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/verifier.rs:319:25
|
319 | / lookups
320 | | .iter()
321 | | .flat_map(move |p| p.queries(vk, x))
322 | | .into_iter(),
| |________________________________________^
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
help: consider removing the `.into_iter()`
|
319 ~ lookups
320 + .iter()
321 ~ .flat_map(move |p| p.queries(vk, x)),
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/verifier.rs#L259
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/verifier.rs:259:25
|
259 | / lookups
260 | | .iter()
261 | | .zip(vk.cs.lookups.iter())
262 | | .flat_map(move |(p, argument)| {
... |
275 | | })
276 | | .into_iter(),
| |________________________________________^
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
help: consider removing the `.into_iter()`
|
259 ~ lookups
260 + .iter()
261 + .zip(vk.cs.lookups.iter())
262 + .flat_map(move |(p, argument)| {
263 + p.expressions(
264 + l_0,
265 + l_last,
266 + l_blind,
267 + argument,
268 + theta,
269 + beta,
270 + gamma,
271 + advice_evals,
272 + fixed_evals,
273 + instance_evals,
274 + )
275 ~ }),
|
|
the borrowed expression implements the required traits:
halo2_proofs/src/plonk/verifier.rs#L206
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/plonk/verifier.rs:206:24
|
206 | let xn = x.pow(&[params.n, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[params.n, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L707
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:707:24
|
707 | .chain(lookups.iter().flat_map(move |p| p.open(pk, x)).into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `lookups.iter().flat_map(move |p| p.open(pk, x))`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the borrowed expression implements the required traits:
halo2_proofs/src/plonk/prover.rs#L599
warning: the borrowed expression implements the required traits
--> halo2_proofs/src/plonk/prover.rs:599:20
|
599 | let xn = x.pow(&[params.n, 0, 0, 0]);
| ^^^^^^^^^^^^^^^^^^^^ help: change this to: `[params.n, 0, 0, 0]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L581
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:581:28
|
581 | .chain(permutation_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `permutation_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:471:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L547
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:547:14
|
547 | .zip(lookup_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `lookup_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/prover.rs#L546
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/prover.rs:546:14
|
546 | .zip(permutation_expressions.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `permutation_expressions`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/plonk/prover.rs#L147
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/plonk/prover.rs:147:18
|
147 | impl<'a, F: Field> Assignment<F> for WitnessCollection<'a, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
147 - impl<'a, F: Field> Assignment<F> for WitnessCollection<'a, F> {
147 + impl<F: Field> Assignment<F> for WitnessCollection<'_, F> {
|
|
doc list item without indentation:
halo2_proofs/src/plonk/lookup/prover.rs#L562
warning: doc list item without indentation
--> halo2_proofs/src/plonk/lookup/prover.rs:562:5
|
562 | /// This method returns (A', S') if no errors are encountered.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
help: indent this line
|
562 | /// This method returns (A', S') if no errors are encountered.
| ++
|
doc list item without indentation:
halo2_proofs/src/plonk/lookup/prover.rs#L74
warning: doc list item without indentation
--> halo2_proofs/src/plonk/lookup/prover.rs:74:9
|
74 | /// The Permuted<C> struct is used to update the Lookup, and is then returned.
| ^
|
= help: if this is supposed to be its own paragraph, add a blank line
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
= note: `-W clippy::doc-lazy-continuation` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::doc_lazy_continuation)]`
help: indent this line
|
74 | /// The Permuted<C> struct is used to update the Lookup, and is then returned.
| ++
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/circuit.rs#L1261
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/circuit.rs:1261:22
|
1261 | .zip(degrees.into_iter())
| ^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `degrees`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
|
the following explicit lifetimes could be elided: 'a:
halo2_proofs/src/plonk/circuit.rs#L988
warning: the following explicit lifetimes could be elided: 'a
--> halo2_proofs/src/plonk/circuit.rs:988:6
|
988 | impl<'a, F: Field> std::fmt::Debug for PinnedGates<'a, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
988 - impl<'a, F: Field> std::fmt::Debug for PinnedGates<'a, F> {
988 + impl<F: Field> std::fmt::Debug for PinnedGates<'_, F> {
|
|
explicit call to `.into_iter()` in function argument accepting `IntoIterator`:
halo2_proofs/src/plonk/circuit.rs#L893
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator`
--> halo2_proofs/src/plonk/circuit.rs:893:18
|
893 | .zip(self.constraints.into_iter())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `self.constraints`
|
note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()`
--> /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/iter/traits/iterator.rs:589:12
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
= note: `-W clippy::useless-conversion` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit.rs#L380
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit.rs:380:6
|
380 | impl<'r, F: Field> Table<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
380 - impl<'r, F: Field> Table<'r, F> {
380 + impl<F: Field> Table<'_, F> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit.rs#L191
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit.rs:191:6
|
191 | impl<'r, F: Field> Region<'r, F> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
191 - impl<'r, F: Field> Region<'r, F> {
191 + impl<F: Field> Region<'_, F> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/table_layouter.rs#L67
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/table_layouter.rs:67:6
|
67 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> TableLayouter<F>
| ^^
68 | for SimpleTableLayouter<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
67 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> TableLayouter<F>
68 ~ for SimpleTableLayouter<'_, 'a, F, CS>
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/table_layouter.rs#L48
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/table_layouter.rs:48:6
|
48 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
48 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'r, 'a, F, CS> {
48 + impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for SimpleTableLayouter<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/v1.rs#L363
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/v1.rs:363:6
|
363 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
363 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'r, 'a, F, CS> {
363 + impl<'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F> for V1Region<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/v1.rs#L348
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/v1.rs:348:6
|
348 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'r, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
348 - impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'r, 'a, F, CS> {
348 + impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug for V1Region<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'p:
halo2_proofs/src/circuit/floor_planner/v1.rs#L163
warning: the following explicit lifetimes could be elided: 'p
--> halo2_proofs/src/circuit/floor_planner/v1.rs:163:6
|
163 | impl<'p, 'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'p, 'a, F, CS> {
| ^^ ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
163 - impl<'p, 'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'p, 'a, F, CS> {
163 + impl<'a, F: Field, CS: Assignment<F> + 'a> Layouter<F> for V1Pass<'_, 'a, F, CS> {
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/single_pass.rs#L246
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/single_pass.rs:246:6
|
246 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F>
| ^^
247 | for SingleChipLayouterRegion<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
help: elide the lifetimes
|
246 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> RegionLayouter<F>
247 ~ for SingleChipLayouterRegion<'_, 'a, F, CS>
|
|
the following explicit lifetimes could be elided: 'r:
halo2_proofs/src/circuit/floor_planner/single_pass.rs#L225
warning: the following explicit lifetimes could be elided: 'r
--> halo2_proofs/src/circuit/floor_planner/single_pass.rs:225:6
|
225 | impl<'r, 'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug
| ^^
226 | for SingleChipLayouterRegion<'r, 'a, F, CS>
| ^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes
= note: `-W clippy::needless-lifetimes` implied by `-W clippy::all`
= help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]`
help: elide the lifetimes
|
225 ~ impl<'a, F: Field, CS: Assignment<F> + 'a> fmt::Debug
226 ~ for SingleChipLayouterRegion<'_, 'a, F, CS>
|
|
struct `PointIndex` is never constructed:
halo2_proofs/src/plonk/circuit.rs#L769
warning: struct `PointIndex` is never constructed
--> halo2_proofs/src/plonk/circuit.rs:769:19
|
769 | pub(crate) struct PointIndex(pub usize);
| ^^^^^^^^^^
|
trait `IndexedParallelIterator` is never used:
halo2_proofs/src/multicore.rs#L28
warning: trait `IndexedParallelIterator` is never used
--> halo2_proofs/src/multicore.rs:28:11
|
28 | pub trait IndexedParallelIterator: std::iter::Iterator {}
| ^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L109
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:109:13
|
109 | /// Selector assignments used for optimization pass
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
110 | selectors: vec![vec![false; n]; num_selectors],
| ---------------------------------------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L107
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:107:13
|
107 | /// Pairs of cells between which we have equality constraints.
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
108 | equality: vec![],
| ---------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
|
unused doc comment:
halo2_proofs/src/dev/cost.rs#L105
warning: unused doc comment
--> halo2_proofs/src/dev/cost.rs:105:13
|
105 | /// Any cells assigned outside of a region.
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
106 | loose_cells: vec![],
| ------------------- rustdoc does not generate documentation for expression fields
|
= help: use `//` for a plain comment
= note: `#[warn(unused_doc_comments)]` on by default
|
unused imports: `ParallelIterator` and `Scope`:
halo2_proofs/src/multicore.rs#L15
warning: unused imports: `ParallelIterator` and `Scope`
--> halo2_proofs/src/multicore.rs:15:34
|
15 | iter::{IntoParallelIterator, ParallelIterator},
| ^^^^^^^^^^^^^^^^
16 | join, scope, Scope,
| ^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|