Skip to content
  • Kees Cook's avatar
    treewide: Remove uninitialized_var() usage · 3f649ab7
    Kees Cook authored
    Using uninitialized_var() is dangerous as it papers over real bugs[1]
    (or can in the future), and suppresses unrelated compiler warnings
    (e.g. "unused variable"). If the compiler thinks it is uninitialized,
    either simply initialize the variable or make compiler changes.
    
    In preparation for removing[2] the[3] macro[4], remove all remaining
    needless uses with the following script:
    
    git grep '\buninitialized_var\b' | cut -d: -f1 | sort -u | \
    	xargs perl -pi -e \
    		's/\buninitialized_var\(([^\)]+)\)/\1/g;
    		 s:\s*/\* (GCC be quiet|to make compiler happy) \*/$::g;'
    
    drivers/video/fbdev/riva/riva_hw.c was manually tweaked to avoid
    pathological white-space.
    
    No outstanding warnings were found building allmodconfig with GCC 9.3.0
    for x86_64, i386, arm64, arm, powerpc, powerpc64le, s390x, mips, sparc64,
    alpha, and m68k.
    
    [1] https://lore.kernel.org/lkml/20200603174714.192027-1-glider@google.com/
    [2] https://lore.kernel.org/lkml/CA+55aFw+Vbj0i=1TGqCR5vQkCzWJ0QxK6CernOU6ee...
    3f649ab7