On 5/3/2022 10:58 PM, Kalle Valo wrote:
Jeff Johnson <quic_jjohnson@xxxxxxxxxxx> writes:
pe>> is there a reason to not declare deflink here?
then its scope of definition would equal the scope of usage
In ath10k and ath11k I have tried to avoid that and instead declare all
variables in the beginning of the function, this is to keep the code
simple. Of course there are few cases where a variable is declared in
the middle of the function, but that's just sloppy review on my part. I
feel that it's better to refactor the function into smaller functions
than start declaring variables in the middle of functions. Does that
make sense?
This is really an academic question.
In the larger kernel community I'm seeing a push to reduce the scope of
identifiers in some cases:
1) declaring loop control variables within the actual loop control operation
2) prohibiting the access to list iterators outside the list iteration loop
From a software engineering perspective limiting scope can prevent some
coding errors by preventing new code from being introduced which tries
to access an identifier which has not been initialized.
To that end, I fully support the guidance to refactor into small
functions where variable scope is not an issue.
Also consistency is extremely important, so I totally embrace having a
consistent approach.
/jeff