On Fri, 2022-02-04 at 05:23 -0800, David E. Box wrote: > On Fri, 2022-02-04 at 02:14 -0800, Joe Perches wrote: > > On Thu, 2022-02-03 at 21:30 -0800, David E. Box wrote: [] > > > - In binary attribute handlers where ret is only used for errors, > > > replace, > > > return (ret < 0) ? ret : size; > > > with, > > > return ret ?: size; > > > > I think this style overly tricky. > > > > Why not the canonical: > > > > if (ret < 0) > > return ret; > > > > return size; > > I can see not using the 2 parameter shortcut of the ternary operator, but the > regular 3 parameter expression is easy to read for simple operations. The issue to me is it combines an error test and error return with the common return. it's also being used and avoided / naked with the similar return min(ret, size); https://lore.kernel.org/lkml/20211116121014.1675-1-zhaoxiao@xxxxxxxxxxxxx/T/