On Tue, 2015-12-15 at 19:02 +0100, SF Markus Elfring wrote:
> > This is the original code:
> Really …?
> >     result = baz();
> >     if (result)
> >             goto label;
> > 
> > label:
> >     go on...
> 
> I do not see such a source code structure
> at the six places I propose to clean-up.
> 
> 
> > I don't find the test->goto label; label: use offensive,
> > but if he does, I think keeping a blank line in place of
> > the test->goto might be better.
> 
> I find this an interesting view on source code layout.
> Are there any more opinions around such implementation details?

Or to put it another way, use a blank line before the
first or only label in an error/out block.

I don't find it different then commonly written blocks like:

void foo(void)
{
        ...;

        wind1();

        val = func1(...);
        if (val) {
                printk(...);
                goto err_type;
        }

        wind2();

        val = func2(...);
        if (val) {
                printk(...);
                goto err_type2;
        }

        ...

        return 0;

err_type2:
        unwind2();
err_type:
        unwind1();
        return -ERR;
}

Yes, you can elide all the blank lines, but using them can
help readability.
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to