From: "Thomas Weißschuh " <thomas@t-8ch.de>
To: Zhangjin Wu <falcon@tinylab.org>
Cc: linux@weissschuh.net, linux-kernel@vger.kernel.org,
linux-kselftest@vger.kernel.org, shuah@kernel.org,
tanyuan@tinylab.org, w@1wt.eu
Subject: Re: [PATCH v2 07/10] selftests/nolibc: avoid unused arguments warnings
Date: Tue, 1 Aug 2023 12:17:33 +0200 (GMT+02:00) [thread overview]
Message-ID: <9c47fc05-ba20-4d90-9d11-840f77c35aaa@t-8ch.de> (raw)
In-Reply-To: <20230801101508.75571-1-falcon@tinylab.org>
Aug 1, 2023 12:15:27 Zhangjin Wu <falcon@tinylab.org>:
> Hi, Thomas
>
>> On 2023-08-01 10:07:28+0200, Willy Tarreau wrote:
>>> On Tue, Aug 01, 2023 at 07:30:14AM +0200, Thomas Weißschuh wrote:
>>>> This warnings will be enabled later so avoid triggering it.
>>>>
>>>> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
>>>> ---
>>>> tools/testing/selftests/nolibc/nolibc-test.c | 3 ++-
>>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c
>>>> index 53a3773c7790..cb17cccd0bc7 100644
>>>> --- a/tools/testing/selftests/nolibc/nolibc-test.c
>>>> +++ b/tools/testing/selftests/nolibc/nolibc-test.c
>>>> @@ -1089,7 +1089,8 @@ static int smash_stack(void)
>>>> return 1;
>>>> }
>>>>
>>>> -static int run_protection(int min, int max)
>>>> +static int run_protection(int __attribute__((unused)) min,
>>>> + int __attribute__((unused)) max)
>>>
>>> This one is used to silence -Wunused-parameter I guess.
>>
>> Yep.
>>
>>> It's one of
>>> the rare warnings that I find totally useless in field, because it's
>>> simply against the principle of using function pointers with different
>>> functions having the same interface but different implementations. As
>>> your code evolves you end up with unused on absolutely *all* of the
>>> arguments of *all* such functions, which makes them a real pain to add
>>> and tends to encourage poor practices such as excessive code reuse just
>>> by laziness or boredom. BTW it's one of those that are already disabled
>>> in the kernel and we could very well do the same here.
>>
>> It's indeed unfortunate.
>>
>> As long as we don't have too many of them I would prefer to keep the
>> explicit annotations. While they are ugly we then can still reap the
>> positive aspects of the warning.
>>
>> This is where -std=c89 bites us. With extensions (or C2X) we could also
>> just leave off the argument name to mark it as unused:
>> run_protection(int, int)
>
> what about further simply ignore the arguments like we did for main(void)?
That doesn't work because it is stored as a function pointer in the testcases array.
And these members all take the two parameters.
next prev parent reply other threads:[~2023-08-01 10:21 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-01 5:30 [PATCH v2 00/10] tools/nolibc: enable compiler warnings Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 01/10] tools/nolibc: drop unused variables Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 02/10] tools/nolibc: sys: avoid implicit sign cast Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 03/10] tools/nolibc: stdint: use int for size_t on 32bit Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 04/10] selftests/nolibc: drop unused variables Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 05/10] selftests/nolibc: mark test helpers as potentially unused Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 06/10] selftests/nolibc: make functions static if possible Thomas Weißschuh
2023-08-01 6:52 ` Willy Tarreau
2023-08-01 7:34 ` Thomas Weißschuh
2023-08-01 8:13 ` Willy Tarreau
2023-08-01 8:50 ` Thomas Weißschuh
2023-08-01 9:13 ` Willy Tarreau
2023-08-01 5:30 ` [PATCH v2 07/10] selftests/nolibc: avoid unused arguments warnings Thomas Weißschuh
2023-08-01 8:07 ` Willy Tarreau
2023-08-01 8:13 ` Thomas Weißschuh
2023-08-01 10:15 ` Zhangjin Wu
2023-08-01 10:17 ` Thomas Weißschuh [this message]
2023-08-01 5:30 ` [PATCH v2 08/10] selftests/nolibc: avoid sign-compare warnings Thomas Weißschuh
2023-08-01 5:48 ` Zhangjin Wu
2023-08-01 5:57 ` Thomas Weißschuh
2023-08-01 6:50 ` Zhangjin Wu
2023-08-01 5:30 ` [PATCH v2 09/10] selftests/nolibc: test return value of read() in test_vfprintf Thomas Weißschuh
2023-08-01 6:59 ` Willy Tarreau
2023-08-01 7:48 ` Thomas Weißschuh
2023-08-01 5:30 ` [PATCH v2 10/10] selftests/nolibc: enable compiler warnings Thomas Weißschuh
2023-08-02 20:22 ` [PATCH v2 00/10] tools/nolibc: " Willy Tarreau
2023-08-02 21:10 ` Thomas Weißschuh
2023-08-03 2:10 ` Willy Tarreau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9c47fc05-ba20-4d90-9d11-840f77c35aaa@t-8ch.de \
--to=thomas@t-8ch.de \
--cc=falcon@tinylab.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux@weissschuh.net \
--cc=shuah@kernel.org \
--cc=tanyuan@tinylab.org \
--cc=w@1wt.eu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®