On Wed, 2015-05-27 at 06:39 +0530, Shailendra Verma wrote: > The bool value false is not always to be 0.
By definition (7.16 Boolean type and values <stdbool.h>), false is integer 0. Setting a boolean variable to 0 is equivalent to setting it to false. What I think you mean is that a boolean variable can be set to 0 when false might be more intelligible. > So this patch will > prevent for error if static bool or global bool are initialized > with false value. [] > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] > # check for global initialisers. > - if ($line =~ > /^\+(\s*$Type\sa*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/) { > + if ($line =~ > /^\+(\s*$Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL)\s*;/) { > if (ERROR("GLOBAL_INITIALISERS", > "do not initialise globals to 0 or NULL\n" . > $herecurr) && I think using false adds some clarity for the reader and even if something were to be applied, the error message should probably be "do not initialize globals to $2\n" (choose the spelling of your choice for initialise/initialize) The (0|NULL|false) regex could probably be expanded to (0x0+|0|NULL|false) or that regex could be saved as a $our zero_value and tested using that new variable. [] > # check for static initialisers. > - if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL|false)\s*;/) { > + if ($line =~ /^\+.*\bstatic\s.*=\s*(0|NULL)\s*;/) { > if (ERROR("INITIALISED_STATIC", > "do not initialise statics to 0 or NULL\n" . > $herecurr) && $1 here -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/