On 05/11/2018 09:59 AM, Mike Blackwell wrote: > After applying the perlcritic overrides Andrew used for the buildfarm, > one of the most common remaining level 4 warnings in the PostgreSQL > source, with 186 occurrences, is 'Subroutine does not end with "return"'. > > The point of this warning is that, in Perl, falling off the end of a > subroutine returns the result of the last statement. Therefor one > should explicitly 'return;' to make it clear the caller is not > expecting that result as the return value. > > I believe Andrew took the approach of adding return at the end of all > functions for the buildfarm code. Would the project prefer the same? > The other option would be disable the warning, based on a policy of > always explicitly using 'return' when returning a value. > > Thoughts? > >
Part of the reasoning behind this perlcritic policy is that falling off the end of a function can leak information. That's why I went and cleaned it up in the buildfarm code. I don't have terribly strong feelings either way, but if Mike wants to do the leg work then I favor accepting a patch to clean this up. cheers andrew -- Andrew Dunstan https://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services