git: 16079c7233be - main - hid: quiet -Wswitch
Vladimir Kondratyev
vladimir at kondratyev.su
Mon Jan 11 20:24:41 UTC 2021
On 11.01.2021 22:36, Ryan Libby wrote:
> On Mon, Jan 11, 2021 at 11:22 AM Jessica Clarke <jrtc27 at freebsd.org> wrote:
>>
>> On 11 Jan 2021, at 19:14, Vladimir Kondratyev <vladimir at kondratyev.su> wrote:
>>> On 11.01.2021 21:03, John Baldwin wrote:
>>>> On 1/10/21 9:54 PM, Ryan Libby wrote:
>>>>> The branch main has been updated by rlibby:
>>>>>
>>>>> URL: https://cgit.FreeBSD.org/src/commit/?id=16079c7233be8bd6c88e3421a70c7ca87cfea370
>>>>>
>>>>> commit 16079c7233be8bd6c88e3421a70c7ca87cfea370
>>>>> Author: Ryan Libby <rlibby at FreeBSD.org>
>>>>> AuthorDate: 2021-01-11 05:53:15 +0000
>>>>> Commit: Ryan Libby <rlibby at FreeBSD.org>
>>>>> CommitDate: 2021-01-11 05:53:15 +0000
>>>>>
>>>>> hid: quiet -Wswitch
>>>>>
>>>>> Gcc builds complained that not all switch cases are handled. Add
>>>>> default cases to appease gcc.
>>>>>
>>>>> Reviewed by: hselasky (previous version), wulf
>>>>> Sponsored by: Dell EMC Isilon
>>>>> Differential Revision: https://reviews.freebsd.org/D28082
>>>>
>>>> If these cases are never reachable, then I think '__assert_unreachable()'
>>>> is preferred to a plain break.
>>>>
>>> These cases are reachable. They are NOP steps of state machine.
>>
>> How many states are there? It might be better to document that using an
>> explicit set of case labels that just immediately break (and then
>> -Wswitch will help you in future in case you ever forget to update one
>> of the switch statements). Where possible -Wswitch is best fixed, not
>> silenced with default, though there are times when the latter is
>> preferable.
>>
>> Jess
>>
>
> There are currently two other enum values, and four total.
>
> I agree with your and John's points in general. In this case, this was
> specifically discussed in review and reviewers requested use of default.
> From my perspective, if that's what maintainers prefer after having
> considered the options, use of default is acceptable.
>
Skipping of this 2 steps requires addition of extra flags just to avoid
calling of NOP routine once at device_probe() and once at
device_detach(). I see no reason to add such a micro-optimization at
cost of simplicity.
More information about the dev-commits-src-main
mailing list