RE: [PATCH net-next 1/2 v2] tools: ynl-gen: fix enum index in _decode_enum(..)

From: Kubalewski, Arkadiusz
Date: Tue Jul 18 2023 - 12:30:12 EST


>From: Jakub Kicinski <kuba@xxxxxxxxxx>
>Sent: Thursday, July 13, 2023 6:03 PM
>
>On Thu, 13 Jul 2023 11:05:49 +0200 Arkadiusz Kubalewski wrote:
>> - i = attr_spec.get('value-start', 0)
>> if 'enum-as-flags' in attr_spec and attr_spec['enum-as-flags']:
>> value = set()
>> while raw:
>> if raw & 1:
>> - value.add(enum.entries_by_val[i].name)
>> + value.add(enum.entries_by_val[raw & 1].name)
>> raw >>= 1
>> - i += 1
>
>This doesn't make sense, as I suggested you need to keep i for this
>loop. Move it to the inside of the if 'enum-as-fla... and init to 0.
>
>i is tracking which bit number we are at as we consume / shift out
>bits from raw.
>

Yeah, you are right, I don't think I had clear mind when created those..

>Have you ever used ChatGPT? No shame, just curious.

I have used it, but I am not using it to prepare code, this was my fault,
chat would probably do better..

Anyway just sent v3 with this part fixed.

Thank you!
Arkadiusz

>--
>pw-bot: cr