On Thu, Sep 14, 2017 at 6:55 PM, Ludovic BARRE <ludovic.barre@xxxxxx> wrote:
On 09/14/2017 05:24 PM, Geert Uytterhoeven wrote:
Hi Ludovic,
On Thu, Sep 14, 2017 at 5:13 PM, Ludovic BARRE <ludovic.barre@xxxxxx>
wrote:
On 09/14/2017 03:38 PM, Geert Uytterhoeven wrote:
hi Arnd, Geert
sorry, I was forgot this thread while my holidays
Geert: what do you mean like "similar bugs in the future" in "If you
initialized ret at the beginning, you lose the ability to catch newly
introduced similar bugs in the future."
If you pre-initialize ret at the top, you loose the ability of the
compiler
to detect at compile-time if ret is never written to later. It will just
return
-EINVAL at runtime.
With my version, if the code is modified later and another "return ret" is
added, the compiler will detect if there's a code path that forgets
to assign a value to ret.
Ok, it's clear for me.
I favor geert's solution.
Arnd what do you think ?
I usually follow the same rule that Geert explained (and quote
https://rusty.ozlabs.org/?p=232 when I do so). In this case, there
did not seem to be much value as the variable is not used
afterwards, and I kept the 'single return statement' guideline.
In the end, either version seems totally fine to me here, so
please use Geert's if you prefer that.
Arnd