On Tue, Feb 24, 2026 at 2:07 PM Alexandre Courbot <[email protected]> wrote: > > On Tue Feb 24, 2026 at 8:51 PM JST, Andreas Hindborg wrote: > > "Alexandre Courbot" <[email protected]> writes: > > > >> If `CONFIG_PRINTK` is not set, then the following warnings are issued > >> during build: > >> > >> warning: unused variable: `args` > >> --> ../rust/kernel/kunit.rs:16:12 > >> | > >> 16 | pub fn err(args: fmt::Arguments<'_>) { > >> | ^^^^ help: if this is intentional, prefix it with an > >> underscore: `_args` > >> | > >> = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by > >> default > >> > >> warning: unused variable: `args` > >> --> ../rust/kernel/kunit.rs:32:13 > >> | > >> 32 | pub fn info(args: fmt::Arguments<'_>) { > >> | ^^^^ help: if this is intentional, prefix it with an > >> underscore: `_args` > >> > >> Fix this by adding a no-op assignment using `args` when `CONFIG_PRINTK` > >> is not set. > >> > >> Fixes: a66d733da801 ("rust: support running Rust documentation tests as > >> KUnit ones") > >> Signed-off-by: Alexandre Courbot <[email protected]> > >> --- > >> Changes in v2: > >> - Use a no-op assignment instead of the wider `#[allow(unused_variables)]`. > >> - Link to v1: > >> https://patch.msgid.link/[email protected] > >> --- > >> rust/kernel/kunit.rs | 8 ++++++++ > >> 1 file changed, 8 insertions(+) > >> > >> diff --git a/rust/kernel/kunit.rs b/rust/kernel/kunit.rs > >> index f93f24a60bdd..a1edf7491579 100644 > >> --- a/rust/kernel/kunit.rs > >> +++ b/rust/kernel/kunit.rs > >> @@ -14,6 +14,10 @@ > >> /// Public but hidden since it should only be used from KUnit generated > >> code. > >> #[doc(hidden)] > >> pub fn err(args: fmt::Arguments<'_>) { > >> + // `args` is unused if `CONFIG_PRINTK` is not set - this avoids a > >> build-time warning. > >> + #[cfg(not(CONFIG_PRINTK))] > >> + let _ = args; > > > > I think (didn't test) that you can use a conditional attribute [1] instead: > > > > pub fn err( > > #[cfg_attr(not(CONFIG_PRINTK), expect(unused))] > > args: fmt::Arguments<'_> > > ) { > > Yup, that works as well, and I think I like it better as it is more > localized. Alice, WDYT?
I think the other options is also quite localised. It's per function argument too. shrug Alice

