On Wed, 2015-09-30 at 17:30 +0200, Rasmus Villemoes wrote: > As a quick > > git grep -E '%[ +0#-]*#[ +0#-]*(\*|[0-9]+)?(\.(\*|[0-9]+)?)?p' > > shows, nobody uses the # flag with %p. Should one try to do so, one > will be met with > > warning: `#' flag used with ā%pā gnu_printf format [-Wformat] > > (POSIX and C99 both say "... For other conversion specifiers, the > behavior is undefined.". Obviously, the kernel can choose to define > the behaviour however it wants, but as long as gcc issues that > warning, users are unlikely to show up.) > > Since default_width is effectively always 2*sizeof(void*), we can > simplify the prologue of pointer() and save a few instructions. >
Reviewed-by: Andy Shevchenko <andriy.shevche...@linux.intel.com> > Signed-off-by: Rasmus Villemoes <li...@rasmusvillemoes.dk> > --- > v2: reword slightly, refer to POSIX/C99. > > lib/vsprintf.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/lib/vsprintf.c b/lib/vsprintf.c > index 03fa10b4be96..98b0d7be3fb7 100644 > --- a/lib/vsprintf.c > +++ b/lib/vsprintf.c > @@ -1457,7 +1457,7 @@ static noinline_for_stack > char *pointer(const char *fmt, char *buf, char *end, void *ptr, > struct printf_spec spec) > { > - int default_width = 2 * sizeof(void *) + (spec.flags & > SPECIAL ? 2 : 0); > + const int default_width = 2 * sizeof(void *); > > if (!ptr && *fmt != 'K') { > /* -- Andy Shevchenko <andriy.shevche...@linux.intel.com> Intel Finland Oy -- 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/