On Tue, Jul 15, 2025 at 02:30:40AM +0300, Manos Pitsidianakis wrote: > On Tue, Jul 15, 2025 at 2:07 AM Michael S. Tsirkin <m...@redhat.com> wrote: > > > > We are going to be adding more parameters, and this makes > > rust unhappy: > > Functions with lots of parameters are considered bad style and reduce > > readability (“what does the 5th parameter mean?”). Consider grouping > > some parameters into a new type. > > > > Specifically: > > > > error: this function has too many arguments (8/7) > > --> > > /builds/mstredhat/qemu/build/rust/qemu-api/rust-qemu-api-tests.p/structured/bindings.inc.rs:3840:5 > > | > > 3840 | / pub fn new_bitfield_1( > > 3841 | | secure: std::os::raw::c_uint, > > 3842 | | space: std::os::raw::c_uint, > > 3843 | | user: std::os::raw::c_uint, > > ... | > > 3848 | | address_type: std::os::raw::c_uint, > > 3849 | | ) -> __BindgenBitfieldUnit<[u8; 4usize]> { > > | |____________________________________________^ > > | > > = help: for further information visit > > https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments > > = note: `-D clippy::too-many-arguments` implied by `-D warnings` > > = help: to override `-D warnings` add > > `#[allow(clippy::too_many_arguments)]` > > > > I didn't want to disable this globally, so I just shut it off for this > > file. > > > > Message-Id: > > <a4c65fb2b735740bda2874c86de31d29a5ae24d2.1752530758.git....@redhat.com> > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > > --- > > rust/qemu-api/src/bindings.rs | 12 ++++++++---- > > 1 file changed, 8 insertions(+), 4 deletions(-) > > > > diff --git a/rust/qemu-api/src/bindings.rs b/rust/qemu-api/src/bindings.rs > > index 057de4b646..b4692f9b4b 100644 > > --- a/rust/qemu-api/src/bindings.rs > > +++ b/rust/qemu-api/src/bindings.rs > > @@ -18,11 +18,15 @@ > > > > //! `bindgen`-generated declarations. > > > > -#[cfg(MESON)] > > -include!("bindings.inc.rs"); > > +#[allow(clippy::too_many_arguments)] > > +mod gen { > > + #[cfg(MESON)] > > + include!("bindings.inc.rs"); > > > > -#[cfg(not(MESON))] > > -include!(concat!(env!("OUT_DIR"), "/bindings.inc.rs")); > > + #[cfg(not(MESON))] > > + include!(concat!(env!("OUT_DIR"), "/bindings.inc.rs")); > > +} > > +pub use gen::*; > > > > // SAFETY: these are implemented in C; the bindings need to assert that the > > // BQL is taken, either directly or via `BqlCell` and `BqlRefCell`. > > -- > > MST > > > > Hi Michael, > > This patch does not seem to have been reviewed. > > The clippy allows are in the top of the file, not above the > `include!`. This should be a one line change and the `mod gen` wrap is > unnecessary. > -- > Manos Pitsidianakis > Emulation and Virtualization Engineer at Linaro Ltd
Yea sorry - I really wanted the API changes in and I tried to be as conservative as possible. I'll send a revert and the one-liner on top, is that ok with you? -- MST