Sat, Oct 22, 2016 at 03:48:48AM CEST, torva...@linux-foundation.org wrote: >On Fri, Oct 21, 2016 at 9:31 AM, Jiri Pirko <j...@resnulli.us> wrote: >> >> I don't see how vlan could be used uninitialized. But I understand that >> this is impossible for gcc to track it. Please just use uninitialized_var() > >Actually, I think we should never use "uninitialized_var()" except >possibly for arrays or structures that gcc can complain about. > >It's a horrible thing to use, in that it adds extra cruft to the >source code, and then shuts up a compiler warning (even the _reliable_ >warnings from gcc). > >It's much better to just initialize the variable, and if gcc some day >gets smarter and sees that it is unnecessary and always overwritten, >so much the better. The cost of initializing a single word is >basically zero.
On the other hand, I would agrue that initializing a var to "some" value that is never used might confuse the reader. He would naturally try to understand the reason for that exact value in initialization.